如何将 Pandas Dataframe 保存为 gzip/zip 文件?
Pandas是一个建立在NumPy库之上的开源库。它是一个Python包,提供用于处理数值数据和时间序列的各种数据结构和操作。它主要用于更容易地导入和分析数据。 Pandas速度快,为用户提供高性能和生产力。
转换为 zip/gzip 文件
Pandas 中的to_pickle()方法用于将给定的对象pickle(序列化)到文件中。此方法使用以下语法:
句法:
DataFrame.to_pickle(self, path,
compression='infer',
protocol=4)
此方法支持压缩,如 zip、gzip、bz2 和 xz。在给定的示例中,您将看到如何将 DataFrame 转换为 zip 和 gzip。
示例 1:将 Pandas 数据帧另存为 zip 文件
Python3
# importing packages
import pandas as pd
# dictionary of data
dct = {'ID': {0: 23, 1: 43, 2: 12,
3: 13, 4: 67},
'Name': {0: 'Ajay', 1: 'Deep',
2: 'Deepanshi', 3: 'Mira',
4: 'Yash'},
'Marks': {0: 89, 1: 97, 2: 45, 3: 78,
4: 56},
'Grade': {0: 'B', 1: 'A', 2: 'F', 3: 'C',
4: 'E'}
}
# forming dataframe and printing
data = pd.DataFrame(dct)
print(data)
# using to_pickle function to form file
# by default, compression type infers from the file extension in specified path.
# file will be created in the given path
data.to_pickle('file.zip')
Python3
# importing packages
import pandas as pd
# dictionary of data
dct = {"C1": range(5), "C2": range(5, 10)}
# forming dataframe and printing
data = pd.DataFrame(dct)
print(data)
# using to_pickle function to form file
# we can also select compression type
# file will be created in the given path
data.to_pickle('file.gzip')
Python3
# reading from the zip file
pd.read_pickle('file.zip')
Python3
# reading from gzip file
pd.read_pickle('file.gzip')
输出:
示例 2:将 Pandas 数据帧另存为 gzip 文件。
蟒蛇3
# importing packages
import pandas as pd
# dictionary of data
dct = {"C1": range(5), "C2": range(5, 10)}
# forming dataframe and printing
data = pd.DataFrame(dct)
print(data)
# using to_pickle function to form file
# we can also select compression type
# file will be created in the given path
data.to_pickle('file.gzip')
输出:
读取 zip/gzip 文件
为了读取创建的文件,您需要使用read_pickle()方法。此方法使用如下语法:
pandas.read_pickle(filepath_or_buffer,
compression='infer')
示例 1:读取 zip 文件
蟒蛇3
# reading from the zip file
pd.read_pickle('file.zip')
输出:
示例 2:读取 gzip 文件。
蟒蛇3
# reading from gzip file
pd.read_pickle('file.gzip')
输出:
从上面的两个例子中,我们可以看到两个压缩文件都可以通过read_pickle()方法读取,除了文件扩展名之外没有任何变化。