数据分析和人工智能利器Pandas发布2.0版本,添加了这些新特性

数据分析利器Pandas推出了2.0版本,添加了什么新功能呢?我们一起来看看。

微信搜索关注《Python学研大本营》,加入读者群,分享更多精彩

Python Pandas 2.0刚刚发布,以下是增加和改进的内容(这将会改变很多东西)。

如果你从事于数据科学领域(数据工程/科学/ML),可能已经知道Pandas是什么。

但是在谈到数据工程时,Pandas曾经受到很多人的诟病,因为它在处理大型数据集时性能总是不尽如人意。

为了解决性能问题,Pandas 2.0朝着这个方向迈出的重要一步,以下是它的三大特性。

操作更快、更节省内存

Pandas在后端增加了对 PyArrow 的支持。

PyArrow 后端是Pandas 2.0的一个新功能,它能让用户使用Apache Arrow作为Pandas DataFrames和Series的替代数据存储格式。

这意味着,当你在Pandas 2.0中读取或写入Parquet文件时,它将默认使用PyArrow 来处理数据,从而使操作更快,内存效率更高。

什么是PyArrow?

PyArrow 是一个提供列式内存格式的库,它是一种组织数据的方式,使其更容易被读取和并行处理。

在Pandas 2.0中使用PyArrow 后端可以使数据操作更快,内存效率更高,尤其是在处理大型数据集时。

写入时复制的优化

这一新特性类似于Spark执行代码的方式。

这是一种内存优化技术,在Pandas中用来提高性能,减少处理大数据集时的内存使用。

其原理是,当你复制一个Pandas对象,如DataFrame或Series,而不是立即创建一个新的数据副本,Pandas将创建一个对原始数据的引用,推迟创建一个新的副本,直到你以某种方式修改数据。

这意味着,如果你有相同数据的多个副本,它们都可以引用相同的内存,直到你对其中一个进行修改。这可以大大减少内存的使用,提高性能,因为你不需要对数据进行不必要的复制。

总的来说,写时拷贝是一种强大的优化技术,可以帮助你更有效地处理大型数据集,并减少内存。

索引可以使用NumPy的数字类型

更好的索引,更快的访问和计算方式。Pandas 2.0允许Index持有任何NumPy的数字类型,包括int8, int16, int32, int64, uint8, uint16, uint32, uint64, float32, 和 float64。以前,只是支持int64、uint64和float64类型。

因此,以前创建64位索引的操作现在可以创建较低位数的索引,如32位索引。

总结

总结一下,

1. Pandas 2.0为后端开发增加了PyArrow,使操作更快、更有内存效率。

2. 新增了写时复制优化,类似于Spark和它执行代码的方式。

3. 索引现在可以容纳NumPy的数字类型,从而使操作更快。

推荐书单

《Pandas1.x实例精解》

《Pandas1.x实例精解》详细阐述了与Pandas相关的基本解决方案,主要包括Pandas基础,DataFrame基本操作,创建和保留DataFrame,开始数据分析,探索性数据分析,选择数据子集,过滤行,对齐索引,分组以进行聚合、过滤和转换,将数据重组为规整形式,组合Pandas对象,时间序列分析,使用Matplotlib、Pandas和Seaborn进行可视化,调试和测试等内容。此外,该书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。

《Pandas1.x实例精解》([美]马特·哈里森,等)【摘要 书评 试读】- 京东图书京东JD.COM图书频道为您提供《Pandas1.x实例精解》在线选购,本书作者:,出版社:清华大学出版社。买图书,到京东。网购图书,享受最低优惠折扣!icon-default.png?t=N4P3https://item.jd.com/13255935.html

精彩回顾

【第1篇】利用Pandas操作DataFrame的列与行

【第2篇】Pandas如何对DataFrame排序和统计

【第3篇】Pandas如何使用DataFrame方法链

【第4篇】Pandas如何比较缺失值以及转置方向?

【第5篇】DataFrame如何玩转多样性数据

【第6篇】如何进行探索性数据分析?

【第7篇】使用Pandas处理分类数据

【第8篇】使用Pandas处理连续数据

【第9篇】使用Pandas比较连续值和连续列

【第10篇】如何比较分类值以及使用Pandas分析库

微信搜索关注《Python学研大本营》,加入读者群

访问【IT今日热榜】,发现每日技术热点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值