Pandas2.0来了! 您所在的位置:网站首页 python合并ts Pandas2.0来了!

Pandas2.0来了!

2023-03-15 18:34| 来源: 网络整理| 查看: 265

大家注意:因为微信最近又改了推送机制,经常有小伙伴说错过了之前被删的文章,比如前阵子冒着风险写的爬虫,再比如一些限时福利,错过了就是错过了。

所以建议大家加个星标,就能第一时间收到推送。👇

12c810559e9399ad58b13b462a4be987.jpeg

大家好,我是热爱 Python 的了不起!

Pandas 是一个开源数据分析工具,广泛用于数据清洗、数据处理、数据分析等领域。相信经常做数据处理的童鞋比较熟悉。

随着现在数据量越来越多,pandas的局限性也日渐凸显,在处理大数据时非常恼火,从而选择更加合适的工具,如pyspark等大数据处理框架。

Pandas 2.0 是 Pandas 库的最新版本,它带来了一些重要的改进和新功能。

我们来看看进化之后的新功能。

原生时区支持

Pandas 2.0 引入了原生时区支持,使得 Pandas 能够更好地处理时间序列数据。现在,Pandas 可以轻松地转换时区,并对时区信息进行计算。

import pandas as pd import numpy as np # 创建一个带有时区信息的时间戳系列 ts = pd.Series(pd.date_range('2022-01-01 00:00:00', periods=3, freq='H', tz='Europe/London')) # 将时区转换为另一个时区 ts_utc = ts.dt.tz_convert('UTC') # 显示原始和转换后的时间戳 print(ts) print(ts_utc)

输出:

0   2022-01-01 00:00:00+00:00 1   2022-01-01 01:00:00+00:00 2   2022-01-01 02:00:00+00:00 dtype: datetime64[ns, Europe/London] 0   2022-01-01 00:00:00+00:00 1   2022-01-01 01:00:00+00:00 2   2022-01-01 02:00:00+00:00 dtype: datetime64[ns, UTC] 类型化的列

Pandas 2.0 引入了类型化的列,使得用户可以更好地管理数据类型,并提高数据处理的效率。现在,用户可以在创建数据帧时指定每个列的数据类型,这使得数据帧的类型更加清晰明了。

import pandas as pd import numpy as np # 创建一个带有类型化列的数据帧 df = pd.DataFrame({     'A': pd.Series(np.random.randn(5), dtype='float32'),     'B': pd.Series(np.random.randint(0, 10, 5), dtype='int32'),     'C': pd.Series(np.random.choice(['foo', 'bar', 'baz'], 5), dtype='category') }) # 显示列的数据类型 print(df.dtypes)

输出:

A           float32 B             int32 C          category dtype: object Datetime 类型的可空性

Pandas 2.0 引入了 Datetime 类型的可空性,使得用户可以更好地处理缺失值。现在,Pandas 可以轻松地处理缺失值日期时间,而不需要额外的处理。

import pandas as pd import numpy as np # 创建一个带有空值日期时间的序列 dt = pd.Series([pd.Timestamp('2022-01-01'), pd.NaT, pd.Timestamp('2022-01-03')]) # 显示带有空值的序列 print(dt)

输出:

0   2022-01-01 1          NaT 2   2022-01-03 dtype: datetime64[ns] 改进的分组操作

Pandas 2.0 引入了改进的分组操作,使得用户可以更加轻松地对数据进行分组和聚合。现在,用户可以轻松地在一个数据帧中同时进行多个分组操作,这大大提高了数据处理的效率。

import pandas as pd import numpy as np # 创建一个带有多个列的数据帧 df = pd.DataFrame({     'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'],     'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'],     'C': np.random.randn(8),     'D': np.random.randn(8) }) # 按 A 和 B 列分组,并对 C 列应用 mean 函数 grouped = df.groupby(['A', 'B']).mean() # 显示分组后的数据 print(grouped)

输出:

C         D A   B                         bar one    1.224593  1.277185     three -0.672583  0 改进的 IO 性能

Pandas 2.0 引入了改进的 IO 性能,使得用户可以更加快速地读取和写入数据。现在,Pandas 可以更好地处理大型数据集,并提供更好的内存管理和压缩算法。

更好的内存管理

Pandas 2.0 引入了更好的内存管理,使得用户可以更加轻松地处理大型数据集。现在,Pandas 可以更好地管理内存,减少内存泄漏和内存碎片化问题。

总结

Pandas 2.0 带来了许多重要的改进和新功能,使得 Pandas 更加强大和灵活。如果你是一个数据分析师或者数据科学家,那么 Pandas 2.0 绝对值得一试!

交流群

时隔2个月,摸鱼学习交流群再次限时开放了。

e3146d3328775a5d821af05392136f8f.png

Python技术交流群(技术交流、摸鱼、白嫖课程为主)又不定时开放了,感兴趣的朋友,可以在下方公号内回复:666,即可进入,一起 100 天计划!

老规矩,酱友们还记得么,右下角的 “在看” 点一下,如果感觉文章内容不错的话,记得分享朋友圈让更多的人知道!

b0e0c8c6b67e3d5dcbcee64c4c1b63f6.gif

【神秘礼包获取方式】

识别下方公众号,回复:1024

24852c5718665f5a9023e5b56c27049b.jpeg



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有