Pandas で複数の csv ファイルを結合する方法 (例あり)
次の基本構文を使用して、同じフォルダーにある複数の CSV ファイルを pandas DataFrame にマージできます。
import pandas as pd
import glob
import bone
#define path to CSV files
path = r' C:\Users\bob\Documents\my_data_files '
#identify all CSV files
all_files = glob. glob ( os.path.join (" *.csv " ))
#merge all CSV files into one DataFrame
df = pd. concat ((pd. read_csv (f) for f in all_files), ignore_index= True )
この特定の例では、 my_data_filesというフォルダーにあるすべての CSV ファイルを単一の Pandas DataFrame にマージします。
次の例は、この構文を実際に使用する方法を示しています。
例: Pandas で複数の CSV ファイルをマージする
私のコンピューター上に、3 つの CSV ファイルを含むmy_data_filesというフォルダーがあるとします。
各 CSV ファイルには、 PointsとAssistsという 2 つの列が含まれており、さまざまなバスケットボール選手のポイントとアシストを表します。
df1という最初の CSV は次のようになります。
次の構文を使用して、フォルダー内の 3 つの CSV ファイルを 1 つのパンダ データフレームにマージできます。
import pandas as pd
import glob
import bone
#define path to CSV files
path = r' C:\Users\bob\Documents\my_data_files '
#identify all CSV files
all_files = glob. glob ( os.path.join (" *.csv " ))
#merge all CSV files into one DataFrame
df = pd. concat ((pd. read_csv (f) for f in all_files), ignore_index= True )
#view resulting DataFrame
print (df)
assist points
0 4 3
1 5 2
2 5 4
3 6 4
4 8 6
5 9 3
6 2 3
7 10 2
8 14 9
9 15 3
10 6 10
11 8 6
12 9 4
3 つの CSV ファイルはすべて正常にインポートされ、単一の DataFrame にマージされていることに注意してください。
最終的な DataFrame には 13 行と 2 列が含まれます。
注: pandas read_csv()関数の完全なドキュメントはここで見つけることができます。
追加リソース
次のチュートリアルでは、Python で他の一般的なタスクを実行する方法について説明します。
Pandas: CSV ファイルを読み取るときに行をスキップする方法
パンダ: 既存の CSV ファイルにデータを追加する方法
Pandas: CSV ファイルをインポートするときにタイプを指定する方法
Pandas: CSV ファイルをインポートするときに列名を設定する方法