百倍加速IO读写!快使用Parquet和Feather格式!⛵

时间:2022-12-21 14:05:27
百倍加速IO读写!快使用Parquet和Feather格式!⛵

???? 作者:韩信子@ShowMeAI
???? 数据分析实战系列https://www.showmeai.tech/tutorials/40
???? 本文地址https://www.showmeai.tech/article-detail/409
???? 声明:版权所有,转载请联系平台与作者并注明出处
???? 收藏ShowMeAI查看更多精彩内容

百倍加速IO读写!快使用Parquet和Feather格式!⛵

我们在处理本地存储的数据时遇到了一些问题。在相对较小的数据集上,读取-处理-写入操作可能很舒服,但对于大型 .csv 文件来说,这些操作非常麻烦,可能会消耗大量时间和资源。

为了解决这个问题,我将介绍两种文件类型,它们可以提高您的数据读写速度,并压缩存储在磁盘上的数据大小:

百倍加速IO读写!快使用Parquet和Feather格式!⛵
百倍加速IO读写!快使用Parquet和Feather格式!⛵

这两种文件类型都具有以下特点:

  • 默认情况下可以使用 Python-Pandas 访问。不过,您可能需要额外安装 pyarrow 和它的一些扩展,具体取决于您的数据类型。
  • 支持基于列的 I/O 管理。这样,您可以防止在读取所有数据时临时使用额外的 RAM,然后删除不需要的列。
  • 以二进制格式以自己的类型而不是原始格式存储数据,您最多可以节省 50% 的存储空间,并且可以在读写操作中获得高达 x100 的加速。

这两种文件类型都非常易于使用。更改您当前使用的代码行即可。让我们来看看它们!

???? Parquet格式

import pandas as pd

df = pd.read_csv("some_data.csv")

# Saving Parquet files
df.to_parquet("df.parquet")

# Reading Parquet files
df_parq = pd.read_parquet("df.parquet")

???? Feather格式

import pandas as pd

df = pd.read_csv("some_data.csv")

# Saving Feather files
df.to_feather("df.feather")

# Reading Feather files
df_feat = pd.read_feather("df.feather")

???? 总结

在本篇内容中,ShowMeAI给大家介绍了提高读写速度的数据格式,如果您不想使用 Excel 原始格式存储数据,那么建议您使用并行读取和写入数据的方法,这样可以提高数据处理的速度和效率。

参考资料

推荐阅读

百倍加速IO读写!快使用Parquet和Feather格式!⛵