天天看點

寫入檔案_Python使用pandas寫入excel或txt檔案

在本文中我們将介紹pandas寫入Excel或者txt檔案時,如何處理序号列,中文編碼,同時在一個檔案中儲存多個sheet頁,以及DataFrame如何處理日期。程式的源代碼如下:

寫入檔案_Python使用pandas寫入excel或txt檔案

程式的6-10行,我們先構造一個包含字典的清單。其中最後一個字段是"報表時間",Timestamp類型,在這裡我們要使用date()函數,傳回一個date類型。這是保證我們在後面儲存檔案時,可以得到YYYY-MM-DD形式的日期。

程式的第15行,我們使用data1清單,構造了一個DataFrme類型,同時我們使用columns調整了一下各列的前後順序。

程式的第21行,我們使用to_csv函數,将資料儲存成一個以逗号分隔每個字段的文本檔案。函數的第一個參數是檔案的完整路徑,如果檔案出現亂碼,就需要指定encoding,比如encoding='gbk'

程式的第23行,我們使用to_excel輸出excel檔案,在儲存檔案時,我們可以使用sheet_name指定sheet名稱。效果如下圖所示:

寫入檔案_Python使用pandas寫入excel或txt檔案

我們可以看到excel的sheet設定成了"測試"。在這個檔案中,第A列是DataFrame的索引列,由于現在列名是空的,我們可以使用index_label參數指定索引列的列名。例如程式的第25行。

寫入檔案_Python使用pandas寫入excel或txt檔案

現在我們設定了序号列的标題,預設的情況下序号是以0開頭,這不太符合我們的習慣。我們可以通過設定index屬性,重新設定索引值,例如程式的第27行,我們為df變量設定了index屬性,然後我們再次儲存excel檔案,資料的序号就會是從1開始了。

寫入檔案_Python使用pandas寫入excel或txt檔案

在實際工作中,我們經常需要在同一個檔案中儲存多個sheet,這時我們就需要使用ExcelWriter,例如程式的第31-33行,我們先用with語句指定ExcelWriter的路徑。然後再用to_excel寫入檔案時,傳入writer,這時就可以為一個檔案儲存多個sheet了。

寫入檔案_Python使用pandas寫入excel或txt檔案

以上就是在pandas中輸出excel或者txt檔案的方法。

我使用的環境:Windows 7 + Python 2.7.17 + PyCharm Community Edition 2016.1.5

如果大家認為我的文章還可以,真心希望能幫我點一個"關注",粉絲的數量真的對我很重要,也算是對我努力結果的一個支援,謝謝大家了。