pandas操作excel
最近由于要處理一些excel表格,發(fā)現(xiàn)pandas可以免去很多的繁瑣的人工勞動蜕乡,在這里記錄一下我所用到的知識。
導入文檔
將excel中的工作表導入
filename = '***.xls'
data = pd.read_excel(filename, None)
#此處None的作用是將excel內的所有工作表讀入健盒,生成一個字典称簿,否則默認只讀入第一個工作表
for sh_name in data.keys():
df = data[sh_name]
print(sh_name)
data = pd.read_excel(filename, None, converters={'賬號':str})
#converters可以將長數(shù)字轉換為字符串類型,避免輸出的時候都變成了科學計數(shù)法
df = pd.read_excel(filename, sheet_name='Sheet1', converters={'賬號':str})
#可以指定打開名為Sheet1的工作表父虑,此時讀出的數(shù)據為DataFrame類型
對DataFrame進行操作
查看dataframe的行數(shù)列數(shù)
df.shape()
對DataFrame進行操作
查看dataframe的行數(shù)列數(shù)
df.shape()
對于dataframe的某一列進行篩選
tmp = df[(df.金額 > 0)]
對列名為金額的列進行篩選授药,并將得到的dataframe存入tmp中
對于dataframe的某一列求和陶耍,查看最值等
df.列名.sum()
df.列名.max()
df.列名.min()
導出文檔
導出文檔使用到了out_excel()绑咱,可以將操作完成的dataframe導入excel文件
df.out_excel('文件名.xls', sheet_name = 'xxx')
#還可以通過startrow, startcol等參數(shù)來確定導入位置等,具體可以去查一下這個函數(shù)
這樣子就成功將df導出到excel中了睹晒!
但是括细!這種輸出方法只適用于輸出一次df,如果想要再次輸出的話奋单,該語句將會把原來的文件刪除掉,只寫入最后一次的df
此問題用以下方法來解決:
writer = pd.ExcelWriter('out_file.xls')
df1.to_excel(writer, sheet_name = 'xx.xls')
df2.to_excel(writer, sheet_name = 'xxx.xls')
writer.save()#記得要保存呆盖,不然看不見寫入的數(shù)據
這樣就可以連續(xù)寫入excel文件啦