Pandas 2.1发布了

本文涉及的产品
实时计算 Flink 版,1000CU*H 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: 2023年3月1日,Pandas 发布了2.0版本。6个月后(8月30日),更新了新的2.1版。让我们看看他有什么重要的更新。

更好的PyArrow支持

PyArrow是在Panda 2.0中新加入的后端,对于大数据来说提供了优于NumPy的性能。Pandas 2.1增强了对PyArrow的支持。官方在这次更新中使用最大的高亮字体宣布 PyArrow 将是 Pandas 3.0的基础依赖,这说明Panda 是认定了PyArrow了。

映射所有数组类型时可以忽略NaN类值

在以前版本,可空类型上调用map会在存在类似nan的值时触发错误。而现在可以设定na_action= " ignore "参数,将忽略所有类型数组中的nan值。

以下是发行说明中的一个例子:

 In [5]: ser = pd.Series(["a", "b", np.nan], dtype="category")

 In [6]: ser.map(str.upper, na_action="ignore")
 Out[6]: 
 0      A
 1      B
 2    NaN
 dtype: category
 Categories (2, object): ['A', 'B']

 ##no errors !

字符串的默认类型

默认情况下,所有字符串都存储在具有NumPy对象dtype的列中,如果你安装了PyArrow,则会将所有字符串推断为PyArrow支持的字符串,这个选项需要使用这个参数设置:

 pd.options.future.infer_string = True

Copy-On-Write改进

写时复制在很久以前就出现了。在Pandas中有时你对数据做一些操作,修改的不是数据源的副本,而是数据源本身。例子:

 In [5]: pd.options.mode.copy_on_write = True

 In [6]: df = pd.DataFrame({"foo": [1, 2, 3], "bar": [4, 5, 6]})

 In [7]: subset = df["foo"]

 In [8]: subset.iloc[0] = 100

 In [9]: df
 Out[9]: 
    foo  bar
 0    1    4
 1    2    5
 2    3    6

写时复制是一种防止意外可变性的机制。当从其他数据推断数据时,可以保证只更改副本。这意味着代码将更加统一。Pandas将识别何时复制对象,并且只在必要时复制对象。在Pandas 2.1中,花了很多精力使许多地方的Copy-On-Write保持一致。

新的日期方法

在Pandas 2.1中,增加了一组新处理日期的新方法。

以下是一些最值得注意的方法:

  • Series.dt.is_month_start,
  • Series.dt.is_month_end,
  • Series.dt.is_year_start,
  • Series.dt.is_year_end,
  • Series.dt.is_quarter_start,
  • Series.dt.is_quarter_end,
  • Series.dt.days_in_month,
  • Series.dt.unit,
  • Series.dt.normalize,
  • Series.dt.day_name(),
  • Series.dt.month_name(),

这些方法对我们实际应用来说还是很好的

Python 3.9

pandas 2.1.0支持的最低版本是Python 3.9,也就是说我们如果有低版本的Python项目,要尽快升级了,或者说新项目的话最低也要3.9了

总结

在这次更新中提到了Pandas3.0,说明官方已经开始对它进行设计了,而且也强调了PyArrow的重要性,所以要用好Pandas,PyArrow的基础是需要掌握的。官网的地址:

https://avoid.overfit.cn/post/2604f28a0aef4ae99cf4df15b977210c

目录
相关文章
|
存储 NoSQL 前端开发
jwt与redis,把生成的token放入redis中进行临时存储
jwt与redis,把生成的token放入redis中进行临时存储
876 0
|
数据采集 Ubuntu 数据挖掘
PyHubWeekly | 第七期:5款Python小工具,最后一款会给惊喜
我们日常工作和学习中,会经常做一些重复性的动作,这让人很痛苦,却又很无奈,本期介绍的第5款工具就可以彻底解放你在网页端的各种重复且枯燥的工作。下面,就来看一下本期的内容吧。
PyHubWeekly | 第七期:5款Python小工具,最后一款会给惊喜
|
监控 安全 测试技术
进行API安全审计时,应该关注哪些关键点?
在进行API安全审计时,应关注API资产管理、身份验证与授权、数据加密、输入验证、错误处理、日志记录与监控、敏感数据保护、API网关使用、安全测试、合规性检查、异常检测、响应计划、API文档与版本控制及自动化安全措施等关键点,以提升API安全性,保护企业和用户数据安全。
470 1
|
11月前
|
机器学习/深度学习 分布式计算 算法
【大数据分析&机器学习】分布式机器学习
本文主要介绍分布式机器学习基础知识,并介绍主流的分布式机器学习框架,结合实例介绍一些机器学习算法。
1297 6
|
12月前
|
安全 Java 数据安全/隐私保护
如何配置 Java 安全管理器来避免访问控制异常
配置Java安全管理器以防止访问控制异常,需在启动JVM时通过 `-Djava.security.manager` 参数启用,并设置安全策略文件,定义权限规则,限制代码执行操作,确保应用安全。
808 1
|
监控 网络协议 数据安全/隐私保护
​邮件发送失败DMARC报错问题排查解决有什么理想方法
在邮件营销中,DMARC(域消息验证)报错常见。DMARC基于SPF和DKIM,指定如何处理未认证邮件。排查DMARC问题需检查SPF记录,验证DKIM签名,配置DMARC策略,使用AOKSend发送测试邮件。理想的解决方法包括:定期更新DNS记录,使用专业邮件服务如AOKSend简化配置,监控DMARC报告,逐步加强DMARC策略,并对员工进行培训。这将提高邮件发送成功率和安全性。
|
定位技术 API Python
geopandas 0.14版本重要更新内容一览
geopandas 0.14版本重要更新内容一览
227 1
|
数据可视化 算法 数据挖掘
基于geopandas的空间数据分析-深入浅出分层设色
基于geopandas的空间数据分析-深入浅出分层设色
190 2
|
SQL 关系型数据库 数据库
利用geopandas与PostGIS进行交互
利用geopandas与PostGIS进行交互
222 1
|
SQL Oracle 关系型数据库
调整OceanBase数据库的系统时间,即使只调小1秒导致异常并不是正常现象
【2月更文挑战第21天】调整OceanBase数据库的系统时间,即使只调小1秒导致异常并不是正常现象
503 7