我有多个zip文件包含不同类型的txt文件。如下所示:
zip1
- file1.txt
- file2.txt
- file3.txt
如何使用pandas读取这些文件而不解压缩它们?
我知道如果它们是一个压缩文件,我可以使用read_csv压缩方法,如下所示:
df = pd.read_csv(textfile.zip, compression='zip')
任何帮助如何做到这一点将是伟大的。
我有多个zip文件包含不同类型的txt文件。如下所示:
zip1
- file1.txt
- file2.txt
- file3.txt
如何使用pandas读取这些文件而不解压缩它们?
我知道如果它们是一个压缩文件,我可以使用read_csv压缩方法,如下所示:
df = pd.read_csv(textfile.zip, compression='zip')
任何帮助如何做到这一点将是伟大的。
4条答案
按热度按时间enyaitl31#
您可以将
ZipFile.open()
传递给pandas.read_csv()
,以从打包成多文件zip
的csv文件构造pandas.DataFrame
。代码:
将所有
.csv
读入dict示例:inkz8wg92#
最简单的处理方法(如果你有一个大的csv文件的多个部分压缩到一个zip文件)。
ebdffaop3#
不久前,我在XML文件上遇到了类似的问题。zipfile模块可以帮助您实现这一目标。
如果你想把它们连接成一个pandas对象,那么它可能会变得有点复杂,但这应该是你的开始。注意,
read
方法返回字节,因此您可能还必须处理它。jv4diomz4#
对于zipfile中有空txt文件的用户:
否则,将出现“pandas.errors.EmptyDataError:将不显示要从文件“”中分析的列。