空谷凡人518
xlwt主要用來創建並寫入數據到Excel。已經存在的表不可以寫入。
以下使用Python寫九九乘法表到Excel
運行之後,代碼文件所在的文件夾會多出一個”九九乘法表“的Excel,內容如下圖:
xlrd主要用來讀取Excel的數據。
打印結果如下圖:
使用xlutils的copy函數來變相更改Excel的數據
配合xlrd庫來更改
運行之後,文件夾又多出一個”九九乘法表改版“的Excel表格。內容如下:
沒事學點兒Excel
推薦Pandas庫,因為無論是用Python做數據分析還是用Python做機器學習,Pandas都是用得比較多的,個人感覺是也最方便。
以下從5個方面回答:
安裝Pandas
數據源
利用Python讀取Excel文件
利用Python做數據透視
將數據保存到Excel文件
安裝Pandas
在cmd窗口中,輸入命令:pip install pandas
數據源
例如,Excel文件Bank_Data.xlsx中有以下數據:
利用Python讀取Excel文件
首先,需要讀取Excel文件中的數據,有兩種方式:
1、讀取Excel文件的第一種方式
bankdata.head()
運行結果:
2、讀取Excel文件的第二種方式
#pip install xlrd
#pip install openpyxl
xls_file=pd.ExcelFile('../data/Bank_Data.xlsx')
bankdata=xls_file.parse('bankdata')
bankdata.head()
運行結果:
說明:ExcelFile用到了xlrd和openpyxl包,需要提前安裝。
利用Python做數據透視
接下來還可以利用Python做數據透視:
例如,想統計每個地區的不良貸款總額,則
import numpy as npbank_res1=bankdata.pivot_table(index=['所屬地區'],values=['不良貸款(億元)'],aggfunc=np.sum)
bank_res1
說明:以上用到numpy,所以進行了導入,需要先安裝。
想統計每個地區的不良貸款總額,及銀行數量,則
bank_res2=bankdata.pivot_table(index=['所屬地區'],values=['不良貸款(億元)','銀行編號'],aggfunc={'不良貸款(億元)':np.sum,'銀行編號':np.count_nonzero})
bank_res2
將數據保存到Excel文件
最後,將透視結果保存到Excel,一行代碼搞定。
bank_res2.to_excel("bank_res2.xlsx")
在當前目錄下,可以看到一個新的Excel文件
bank_res2.xlsx
,打開後可以看到如下結果:
回答完畢!
數據分析那些事
python操作Exlcel主要一下三個庫:
xlrd & xlwt & xlutils
xlrd負責讀取Excel文件,支持xls、xlsx
xlwt負責寫入Excel文件,只支持xls格式。對於現在已經Office2019了,還只支持2003版的格式難怪會被人拋棄。
xlutils是一個工具模塊,我們一般只用到copy模塊,用於修改已存在的Excel文件
其中xlrd比較方便,要是學習的話,要因人而異,人與人之間的認知和接受是有微小差異的。建議系統的對三個庫整體把握一下,看是出於興趣還是工作需要。祝你早日得到高人指點,爭取達到人生巔峰。
一個會說話的牛
xlrd負責讀取Excel文件,支持xls、xlsx;
xlwt負責寫入Excel文件,只支持xls格式。
xlutils是一個工具模塊,我們一般只用到copy模塊,用於修改已存在的Excel文件
架構師之旅
你問哪個容易學,我想說會哪個哪個就容易