📜  如何将 Pandas Dataframe 保存为 gzip/zip 文件?

📅  最后修改于: 2022-05-13 01:54:45.984000             🧑  作者: Mango

如何将 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()方法读取,除了文件扩展名之外没有任何变化。