我有多个包含不同类型txt文件的zip文件.

zip1 
  - file1.txt
  - file2.txt
  - file3.txt

如何使用pandas在不提取文件的情况下读取这些文件?

我知道如果每个zip有一个文件,我可以使用read_csv的压缩方法,如下所示:

df = pd.read_csv(textfile.zip, compression='zip') 

任何关于如何做到这一点的帮助都会很好.

推荐答案

您可以通过ZipFile.open()pandas.read_csv()从打包到多文件zip的csv文件构造pandas.DataFrame.

代码:

pd.read_csv(zip_file.open('file3.txt'))

Example to read all .csv into a dict:

from zipfile import ZipFile

zip_file = ZipFile('textfile.zip')
dfs = {text_file.filename: pd.read_csv(zip_file.open(text_file.filename))
       for text_file in zip_file.infolist()
       if text_file.filename.endswith('.csv')}

Python-3.x相关问答推荐

如何绘制交叉验证的AUROC并找到最佳阈值?

汉明距离:涉及按位运算的逻辑步骤不清楚

Python 舍入数字不准确

aiogram机器人中处理文本输入异常而不是按钮点击的回调函数.

Python,Web 从交互式图表中抓取数据

使用 NaN 计算 pct_change 时如何避免 bfill 或 ffill

多进程:两个进程,一起杀死

正则表达式来识别用 Python 写成单词的数字?

Python defaultdict 在获取时返回 None,尽管使用默认值初始化

pymongo 失败并出现错误未定义

对齐文本文件中的列

具有 2 个输入的 python 3 map/lambda 方法

python 3.7 websockets的1006连接异常关闭错误

日志(log)模块不适用于 Python3

Python:如何在三个列表中找到共同值

'~'(波浪号)运算符在 Python 中的应用

pip install dryscrape 失败并显示错误:[Errno 2] 没有这样的文件或目录:'src/webkit_server'?

Python 3.5:async with导致 SyntaxError.为什么?

Django Rest 框架 ListField 和 DictField

在 PostgreSQL 上使用 SQLAlchemy 创建全文搜索索引