直接将gz文件加载到pandas数据帧中

时间:2016-01-30 11:14:48

标签: python pandas gz

我有来自dati.istat.it的这个gz file:在其中是一个csv文件(具有不同的名称),我想直接在pandas数据帧中加载。

如果我使用7zip解压缩,我可以轻松加载此代码 pd.read_csv("DCCV_OCCUPATIT_Data+FootnotesLegend_175b2401-3654-4673-9e60-b300989088bb.csv", sep="|", engine = "python")

如果不用7zip frist解压缩我怎么做?

很多!

1 个答案:

答案 0 :(得分:6)

您可以使用库zipfile

import pandas as pd
import zipfile

z = zipfile.ZipFile('test/file.gz')
print pd.read_csv(z.open("DCCV_OCCUPATIT_Data+FootnotesLegend_175b2401-3654-4673-9e60-b300989088bb.csv"),
                  sep="|",
                  engine = "python")

Pandas仅支持read_csv中的gzipbz2

  

压缩:{'gzip','bz2','推断',无},默认'推断'

     

用于磁盘数据的即时解压缩。如果'推断',则如果filepath_or_buffer是分别以'.gz'或'.bz2'结尾的字符串,则使用gzip或bz2,否则不使用解压缩。设置为“无”无解压缩。

相关问题