Pandas 2.1发布更新功能介绍

 更新时间:2023年09月01日 10:52:44   作者:Deephub  
这篇文章主要为大家介绍了Pandas 2.1发布更新功能介绍,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

引言

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的基础是需要掌握的。

以上就是Pandas 2.1发布更新功能介绍的详细内容,更多关于Pandas 2.1发布更新的资料请关注脚本之家其它相关文章!

相关文章

  • python编写脚本之pyautogui的安装和使用教程

    python编写脚本之pyautogui的安装和使用教程

    pyautogui一个神奇的图像自动化库,学会之后无所不能,下面这篇文章主要给大家介绍了关于python编写脚本之pyautogui的安装和使用的相关资料,需要的朋友可以参考下
    2021-12-12
  • python matplotlib库直方图绘制详解

    python matplotlib库直方图绘制详解

    这篇文章主要介绍了python matplotlib库直方图绘制详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • ChatGLM-6B+LangChain环境部署与使用实战

    ChatGLM-6B+LangChain环境部署与使用实战

    这篇文章主要介绍了ChatGLM-6B+LangChain环境部署与使用方法,结合实例形式详细分析了ChatGLM-6B+LangChain环境部署相关步骤、实现方法与相关注意事项,需要的朋友可以参考下
    2023-07-07
  • 最新解决'nvidia-smi' 不是内部或外部命令也不是可运行的程序

    最新解决'nvidia-smi' 不是内部或外部命令也不是可运行的程序

    使用cmd查看电脑显卡的信息,调用nvidia-smi查看显卡使用情况报错,提示'nvidia-smi' 不是内部或外部命令,也不是可运行的程序,本文给大家分享完美解决方案,感兴趣的朋友跟随小编一起看看吧
    2023-01-01
  • python 监听salt job状态,并任务数据推送到redis中的方法

    python 监听salt job状态,并任务数据推送到redis中的方法

    今天小编就为大家分享一篇python 监听salt job状态,并任务数据推送到redis中的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Python中NumPy的矩阵与通用函数

    Python中NumPy的矩阵与通用函数

    这篇文章主要介绍了Python中NumPy的矩阵与通用函数,Numpy是python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表结构要高效的多支持大量的维度数组与矩阵运算,需要的朋友可以参考下
    2023-07-07
  • Python强化练习之Tensorflow2 opp算法实现月球登陆器

    Python强化练习之Tensorflow2 opp算法实现月球登陆器

    在面向对象出现之前,我们采用的开发方法都是面向过程的编程(OPP)。面向过程的编程中最常用的一个分析方法是“功能分解”。我们会把用户需求先分解成模块,然后把模块分解成大的功能,再把大的功能分解成小的功能,整个需求就是按照这样的方式,最终分解成一个一个的函数
    2021-10-10
  • Python文件路径处理模块pathlib示例详解

    Python文件路径处理模块pathlib示例详解

    pathlib是跨平台的、面向对象的路径操作模块,可适用于不同的操作系统,其操作对象是各种操作系统中使用的路径,下面这篇文章主要给大家介绍了关于Python文件路径处理模块pathlib的相关资料,需要的朋友可以参考下
    2023-04-04
  • Python3变量与基本数据类型用法实例分析

    Python3变量与基本数据类型用法实例分析

    这篇文章主要介绍了Python3变量与基本数据类型用法,结合实例形式分析了Python3保留字、标识符、变量、基本数据类型及相关操作技巧,需要的朋友可以参考下
    2020-02-02
  • python scipy求解非线性方程的方法(fsolve/root)

    python scipy求解非线性方程的方法(fsolve/root)

    今天小编就为大家分享一篇python scipy求解非线性方程的方法(fsolve/root),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11

最新评论