【发布时间】:2020-10-21 07:53:43
【问题描述】:
我有一个包含许多 zip 文件的文件夹,这些 zip 文件中有多个 csv 文件。 有没有办法在 python 的一个数据框中获取所有 .csv 文件? 或者我可以通过任何方式传递 zip 文件列表?
我目前正在尝试的代码是:
import glob
import zipfile
import pandas as pd
for zip_file in glob.glob(r"C:\Users\harsh\Desktop\Temp\data_00-01.zip"):
# This is just one file. There are multiple zip files in the folder
zf = zipfile.ZipFile(zip_file)
dfs = [pd.read_csv(zf.open(f), header=None, sep=";", encoding='latin1') for f in zf.namelist()]
df = pd.concat(dfs,ignore_index=True)
print(df)
此代码适用于一个 zipfile,但我的文件夹中有大约 50 个 zip 文件,我想在一个数据帧中读取并连接这些 zip 文件中的所有 csv 文件。
谢谢
【问题讨论】:
-
您需要获取文件夹中所有文件的名称。请参阅此处了解如何做到这一点:stackoverflow.com/questions/3207219/…
标签: python pandas glob zipfile