如何在 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 文件
假设我的计算机上有一个名为my_data_files的文件夹,其中包含三个 CSV 文件:
每个 CSV 文件包含两列,称为得分和助攻,分别代表不同篮球运动员的得分和助攻。
第一个名为df1的 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 )
#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
请注意,所有三个 CSV 文件均已成功导入并合并到单个 DataFrame 中。
最终的 DataFrame 包含 13 行和 2 列。
注意:您可以在此处找到 pandas read_csv()函数的完整文档。
其他资源
以下教程解释了如何在 Python 中执行其他常见任务:
Pandas:如何在读取 CSV 文件时跳行
Pandas:如何将数据添加到现有 CSV 文件
Pandas:导入 CSV 文件时如何指定类型
Pandas:导入 CSV 文件时如何设置列名称