我的路径中存储了很多zip文件
> mypath / data1.zip
> mypath / data2.zip
>等
每个zip文件包含三个不同的txt文件.例如,在data1.zip中有:
> data1_a.txt
> data1_b.txt
> data1_c.txt
我需要从每个压缩文件(即data1_c.txt,data2_c.txt,data3_c.txt等)加载datai_c.txt并将它们连接成一个数据帧.
不幸的是我无法使用read_csv这样做,因为它只适用于单个压缩文件.
有什么想法怎么做?谢谢!
解决方法
因此,您需要一些其他代码才能进入zip文件.下面是O’Reilly的
Python Cookbook的修改代码
import zipfile import pandas as pd ## make up some data for example x = pd.DataFrame({"A": [1,2],"B": [3,4]}) x.to_csv('a.txt',sep="|",index=False) (x * 2).to_csv('b.txt',index=False) with zipfile.ZipFile('zipfile.zip','w') as myzip: myzip.write('a.txt') myzip.write('b.txt') for filename in z.namelist( ): print 'File:',filename,insideDF = pd.read_csv(StringIO(z.read(filename))) df = pd.concat([df,insideDF]) print df
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。