我正在读取基于名称的特定csv文件名,代码为:
csv_names = [s for s in files_csv if "drive" in s]
输出:
['drive_1.csv',
'drive_2.csv',
'drive_3.csv',
'drive_4.csv']
我怎样才能简单地合并这些文件?
我知道这样做:
df = pd.read_csv(csv_names[0], sep=';', header=None)
df1 = pd.read_csv(csv_names[1], sep=';', header=None)
df2 = pd.read_csv(csv_names[2], sep=';', header=None)
df3 = pd.read_csv(csv_names[3], sep=';', header=None)
我不想一个接一个地读。然后将它们合并。我希望有人有个好主意。
您可以使用pd.concat
和列表理解:
df = pd.concat([pd.read_csv(csv_name, sep=';', header=None) for csv_name in csv_names])
import pandas as pd
df = pd.DataFrame()
for csv in csv_name:
df = pd.concat([df, pd.read_csv(csv, sep=';', header=None)])
df.to_csv('Merged_Data_Frame.csv', index=False)
希望这能有所帮助。这将合并并将它们保存到csv中以供以后使用。