1. 程式人生 > 其它 >合併行_如何使用8行程式碼合併多個CSV檔案

合併行_如何使用8行程式碼合併多個CSV檔案

技術標籤:合併行

原文連結:https://www.freecodecamp.org/news/how-to-combine-multiple-csv-files-with-8-lines-of-code-265183e0854/

當沒有太多檔案需要處理時,手動複製貼上是很好的選擇。但是,如果需要拼接的檔案超過100個,重複的貼上複製非常繁瑣並且容易出錯。

3af4d389c8d30cbb214e8ef81be9129a.png

如果所有檔案都具有相同的表結構(相同的標題和列數),則讓下面的小型Python指令碼完成上述工作。

1.匯入包並設定工作目錄

將下面的“/mydir”改成你所期望的工作目錄

import os
import glob
import pandas as pd
os.chdir("/mydir")

2.使用glob匹配所有的.CSV檔案

glob的作用是返回路徑下的所有.csv檔案

extension = 'csv'
all_filenames = [i for i in glob.glob('*.{}'.format(extension))]

3.合併所有的列表並匯出為CSV

使用panda連線列表中的所有檔案並匯出為CSV。輸出檔名為“combined_csv”。位於設定的工作目錄中。

#combine all files in the list
combined_csv = pd.concat([pd.read_csv(f) for f in all_filenames ])
#export to csv
combined_csv.to_csv( "combined_csv.csv", index=False, encoding='utf-8-sig')

新增encoding = ' utf-8-sig '是為了解決匯出'非英語'語言時的問題。