用excel和python編程的簡單介紹

本文目錄一覽:

一般的工作數據用excel處理還是python處理好

你好:一般的工作數據用office辦公軟件中的excel表格就可以完全解決,沒有必要使用python編程處理。由於python和excel兩種相比較而言,後者相對資料豐富、易學和容易掌握等有點,而python雖說容易學,但是畢竟還是一門編程語言,用途當然可以想像。為此,工作一般就是做簡單的運算、畫圖指標等,office軟件基本可以滿足需求。

python和excel的適用範圍

Python語言可以用來作為批處理語言,寫一些簡單工具,處理些數據,作為其他軟件的接口調試等。Python語言可以用來作為函數語言,進行人 工智能 程序的開發,具有Lisp語言的大部分功能。Python語言可以用來作為過程語言,進行我們常見的應用程序開發,可以和VB等語言一樣應用。 Python語言可以用來作為面向對象語言,具有大部分面向對象語言的特徵,常作為大型應用軟件的原型開發,再用C++改寫,有些直接用Python來開 發。

excel廣泛應用於統計分析、財務管理分析、股票分析和經濟、行政管理等各個方面;Excel是Microsoft為使用Windows和Apple Macintosh操作系統的電腦編寫的一款電子表格軟件。

分析excel和python在處理數據時各自的優劣點?

兩者都是數據分析處理工具,excel上手簡單,操作界面人性化,小批量數據處理神器;

python需要點編程基礎,安裝步驟、導入庫、編譯器、語法讓很多人不懂了,但它在擴展性強,存在大量外部擴展庫,什麼批量合併excel工作簿、批量發送郵件、自動化生成報表之類,雖然這些excel都可以,但涉及到VB語言,遠不及python語法簡單;但是如果一份幾百條數據,需要統計一個結果,excel插入透視表,分類匯總兩步搞定,你非要用python,先是導入pandas/numpy,又是xlrd,接着又是groupby,一頓操作猛如虎,看着十分高大上,人家excel2秒鐘早已搞定;

數據處理:兩者都很熟練的情況下,不考慮數據數量,基本平分秋色,excel成熟體系的快捷鍵、功能;python豐富的各類外部庫;

數據分析:這個的話excel雖然有規劃求解、方差分析、T檢驗之類的工具,但是你要搞個k-mean聚類、決策樹之類的,excel是不行的,還有就是處理數據級與運行效率的問題,excel單表100W,能處理得差不多就二三十萬,多了就卡死了,python就不存在這個問題。

總而言之,公司日常報表,財務類、考勤類、部門小組業績類,這些基本excel就可以搞定,但你要搞大數據分析,隨隨便便幾百萬條數據,excel表示心有餘而力不足。

像Excel一樣使用Python(一)

在進行數據處理時,如果數據簡單,數量不多,excel是大家的首選。但是當數據眾多,類型複雜,需要靈活地顯示切片、進行索引、以及排序時,python會更加方便。藉助python中的numpy和pandas庫,它能快速完成各種任務,包括數據的創建、檢查、清洗、預處理、提取、篩選、匯總、統計等。接下來幾篇文章,將以excel為參照,介紹python中數據的處理。

提到pandas,那就不得不提兩類重要的數據結構,Series和DataFrame,這兩類數據結構都是建立在numpy的數組array基礎上。與array相比,Series是一個一維的數據集,但是每個數據元素都帶有一個索引,有點類似於字典。而DataFrame在數組的基礎上,增加了行索引和列索引,類似於Series的字典,或者說是一個列表集。

所以在數據處理前,要安裝好numpy , pandas。接下來就看看如何完成一套完整的數據操作。

創建數據表的方法分兩種,分別是從外部導入數據,以及直接寫入數據。

在python中,也可外部導入xlsx格式文件,使用read_excel()函數:

import pandas as pd

from pandas import DataFrame,Series

data=DataFrame(pd.read_excel(‘c:/python27/test.xlsx’))

print data

輸出:

Gene Size Function

0 arx1 411 NaN

1 arx2 550 monooxygenase

2 arx3 405 aminotransferase

……

即:調用pandas中read_excel屬性,來讀取文件test.xlsx,並轉換成DataFrame格式,賦給變量data。在每一行後,自動分了一個索引值。除了excel,還支持以下格式文件的導入和寫入:

Python寫入的方法有很多,但還是不如excel方便。常用的例如使用相等長度的字典或numpy數組來創建:

data1 = DataFrame(

{‘Gene’:[‘arx1′,’arx2′,’arx3’],

‘Size’:[411,550,405],

‘Func’:[np.NaN,’monooxygenase’,’aminotransferase ‘]})

print data1

輸出

Func Gene Size

0 NaN arx1 411

1 monooxyg arx2 550

2 amino arx3 405

分配一個行索引後,自動排序並輸出。

在python中,可以使用info()函數查看整個數據的詳細信息。

print data.info()

輸出

RangeIndex: 7 entries, 0 to 6

Data columns (total 3 columns):

Gene 7 non-null object

Size 7 non-null int64

Function 5 non-null object

dtypes: int64(1), object(2)

memory usage: 240.0+ bytes

None

此外,還可以通過shape, column, index, values, dtypes等函數來查看數據維度、行列組成、所有的值、 數據類型:

print data1.shape

print data1.index

print data1.columns

print data1.dtypes

輸出

(3, 3)

RangeIndex(start=0, stop=3, step=1)

Index([u’Func’, u’Gene’, u’Size’], dtype=’object’)

Func object

Gene object

Size int64

dtype: object

在excel中可以按「F5」,在「定位條件」中選擇「空值」,選中後,輸入替換信息,再按「Ctrl+Enter」即可完成替換。

在python中,使用函數 isnull 和 notnull 來檢測數據丟失, 包含空值返回True,不包含則返回False。

pd.isnull(data1)

pd.notnull(data1)

也可以使用函數的實例方法,以及加入參數,對某一列進行檢查:

print data1[‘Func’].isnull()

輸出

Func Gene Size

0 True False False

1 False False False

2 False False False

再使用fillna對空值進行填充:

data.fillna(value=0)

#用0來填充空值

data[‘Size’].fillna(data1[‘Size’].mean())

#用data1中Size列的平均值來填充空值

data[‘Func’]=data[‘Func’].map(str.strip)

#清理Func列中存在的空格

Excel中可以按「Ctrl+F」,可調出替換對話框,替換相應數據。

Python中,使用replace函數替換:

data[‘Func’].replace(‘monooxygenase’, ‘oxidase’)

將Func列中的’monooxygenase’替換成’oxidase’。

Excel中,通過「數據-篩選-高級」可以選擇性地看某一列的唯一值。

Python中,使用unique函數查看:

print data[‘Func’].unique()

輸出

[nan u’monooxygenase’ u’aminotransferase’ u’methyltransferase’]

Excel中,通過UPPER、LOWER、PROPER等函數來變成大寫、小寫、首字母大寫。

Python中也有同名函數:

data1[‘Gene’].str.lower()

Excel中可以通過「數據-刪除重複項」來去除重複值。

Python中,可以通過drop_duplicates函數刪除重複值:

print data[‘Func’].drop_duplicates()

輸出

0 NaN

1 monooxygenase

2 aminotransferase

3 methyltransferase

Name: Func, dtype: object

還可以設置「 keep=』last』 」參數,後出現的被保留,先出現的被刪除:

print data[‘Func’].drop_duplicates(keep=’last’)

輸出

2 aminotransferase

3 methyltransferase

6 monooxygenase

8 NaN

Name: Func, dtype: object

內容參考:

Python For Data Analysis

藍鯨網站分析博客,作者藍鯨(王彥平)

如何用python讀取excel文件?

1.首先說明我是使用的python3.5,我的office版本是2010,首先打開dos命令窗,安裝必須的兩個庫,命令是:

pip3 install xlrd

Pip3 install xlwt

2.準備好excel,例如我的一個工作文件,我放在D盤/百度經驗/11.xlsx,只有一個頁簽A,內容是一些銷售數據

3.打開pycharm,新建一個excel.py的文件,首先導入支持庫

import xlrdimport xlwt

4.針對剛入門的新手,先介紹三個知識,第一個:獲取excel的sheet名稱,第二:獲取excel行數與列數,第三:獲取第幾行第幾列的具體值,這是最常用的三個知識點

5.貼出代碼,具體分析:

(1)要操作excel,首先得打開excel,使用open_workbook(『路徑』)

(2)要獲取行與列,使用nrows(行),ncols(列)

(3)獲取具體的值,使用cell(row,col).value

workbook=xlrd.open_workbook(r’E:11.xlsx’)print (workbook.sheet_names()) sheet2=workbook.sheet_by_name(‘A’) nrows=sheet2.nrows ncols=sheet2.ncols print(nrows,ncols) cell_A=sheet2.cell(1,1).value print(cell_A)

6.要在excel里寫入值,就要使用write屬性,重點說明寫入是用到xlwt這個支援庫,思路是先新建excel,然後新建頁簽B,然後將一組數據寫入到B,最後保存為excel.xls,這裡建議保存為2003的格式,大部分電腦都能打開,特別注意保存的excel的路徑是在python工作文件的目錄下面,貼出代碼:

stus = [[‘年’, ‘月’], [‘2018′, ’10’], [‘2017’, ‘9’], [‘2016’, ‘8’]]Excel = xlwt.Workbook() # 新建excelsheet = Excel.add_sheet(‘B’) #新建頁簽Brow = 0for stu in stus: col = 0 for s in stu: sheet.write(row, col, s) #開始寫入 col = col + 1 row = row + 1Excel.save(‘Excel.xls’) #保存

關於如何用python讀取excel文件,環球青藤小編就和大家分享到這裡了,學習是永無止境的,學習一項技能更是受益終身,所以,只要肯努力學,什麼時候開始都不晚。如果您還想繼續了解關於python編程的學習方法及素材等內容,可以點擊本站其他文章學習。

怎樣在Excel中使用python腳本

一、使用工具:excel、python

二、使用方法和步驟:

1、先安裝python2.7,然後配置環境變量,保證python在該環境中,打開開始菜單,找到計算機,然後右鍵單擊它,選擇【屬性】

2、找到高級系統設置

3、找到環境變量,點擊該按鈕,打開環境變量設置窗口

4、找到Path系統變量,然後點擊【編輯】

5、在這裡,確保python的安裝目錄在,沒有的話,添加進去

6、下面就可以安裝該插件了

7、雙擊即可安裝,安裝過程就是一路點擊』下一步。

8、在這裡,不要勾選python,如果通過這種方式安裝python,你原先安裝的python就無法使用了。

9、最後安裝完成,打開Excel就可以看到datanitro了

三、注意事項:切記不要勾選python,如果通過這種方式安裝python,你原先安裝的python就無法使用了。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/304451.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-01 11:05
下一篇 2025-01-01 11:05

相關推薦

  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • Python編程二級證書考試相關現已可以上網購買

    計算機二級Python考試是一項重要的國家級認證考試,也是Python編程的入門考試。與其他考試一樣,Python編程二級證書的考生需要進入正式考試,而為了備考,這篇文章將詳細介紹…

    編程 2025-04-29
  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • 蝴蝶優化算法Python版

    蝴蝶優化算法是一種基於仿生學的優化算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化算法Python版…

    編程 2025-04-29
  • Python讀取CSV數據畫散點圖

    本文將從以下方面詳細闡述Python讀取CSV文件並畫出散點圖的方法: 一、CSV文件介紹 CSV(Comma-Separated Values)即逗號分隔值,是一種存儲表格數據的…

    編程 2025-04-29

發表回復

登錄後才能評論