将文件夹的多个 csv 文件加载到一个数据框中

新手上路,请多包涵

我将多个 csv 文件保存在一个具有相同列布局的文件夹中,并希望将其作为 pandas 中的数据框加载到 python 中。

这个问题真的很像这个 线程。

我正在使用以下代码:

 import glob
import pandas as pd
salesdata = pd.DataFrame()
for f in glob.glob("TransactionData\Promorelevant\*.csv"):
    appenddata = pd.read_csv(f, header=None, sep=";")
    salesdata = salesdata.append(appenddata,ignore_index=True)

是否有更好的解决方案与另一个包?

这需要很多时间。

谢谢

原文由 PV8 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 536
2 个回答

我建议将列表理解与 concat 一起使用:

 import glob
import pandas as pd

files = glob.glob("TransactionData\Promorelevant*.csv")
dfs = [pd.read_csv(f, header=None, sep=";") for f in files]

salesdata = pd.concat(dfs,ignore_index=True)

原文由 jezrael 发布,翻译遵循 CC BY-SA 4.0 许可协议

链接到实际答案 的帮助下

这似乎是最好的班轮:

 import glob, os
df = pd.concat(map(pd.read_csv, glob.glob(os.path.join('', "*.csv"))))

原文由 Muhammad Haseeb 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题