带你一起盘点,Pandas1.0的主要功能


全文共2252字,预计学习时长7分钟

来源:Pexels

注意:Pandas 1.0.0rc已于1月9日发布,先前的版本为0.25。

 

Pandas首个全新主要发行版本包含许多重要功能:更完善的数据框自动汇总、更全面的输出格式、全新的数据类型以及文档站点。

 

在全新的文档站点上,可以找到完整的发行说明,但小芯认为,技术含量较低的概述也会有所帮助。

 

用户可以使用 pip升级Pandas,以便使用其新版本。在撰写本文时,Pandas1.0仍然是候选版本,这意味着要安装Pandas1.0需要明确指定其版本。

 

pip install --upgradepandas==1.0.0rc0

当然,更新可能会破坏某些代码,因为这是主要版本的发布,因此请务必小心!

 

此版本的Pandas不再支持Python 2。运行Pandas 1.0+至少需要Python 3.6+,因此请确保使用合适版本的pip 和python。

 

$ pip --versionpip 19.3.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)$ python--versionPython 3.7.5

用户可以确认一切正常,并且Pandas使用的是正确版本。

 

>>> import pandas as pd>>> pd.__version__1.0.0rc0

使用DataFrame.info更好的自动汇总

 

来源:Pexels

笔者最喜欢的新功能是优化之后的DataFrame.info法。现在,它使用了更具可读性的格式,从而使数据探索过程更加容易。

 

>>> df = pd.DataFrame({...:   'A': [1,2,3], ...:   'B': ["goodbye","cruel", "world"], ...:   'C': [False, True, False]...:})>>> df.info()<class 'pandas.core.frame.DataFrame'>RangeIndex: 3 entries, 0 to 2Data columns (total 3 columns): #  Column  Non-Null Count  Dtype---  ------  --------------  ----- 0  A       3 non-null      int64 1  B       3 non-null      object 2  C       3 non-null      objectdtypes: int64(1), object(2)memory usage: 200.0+ bytes

Markdown表的输出格式

 

其次,笔者最喜欢的功能是使用新的 DataFrame.to_markdown 法将数据帧导出到Markdown表中。

 

>>> df.to_markdown()|    |  A | B       | C     ||---:|----:|:--------|:------||  0 |  1 | goodbye | False ||  1 |  2 | cruel   | True  ||  2 |  3 | world   | False |

这样一来,通过github gists在Medium等地方显示表格更加便捷。

 

booleans and strings的新数据类型

 

来源:Pexels

Pandas1.0还为booleans and strings引入了实验数据类型。

 

由于这些更改是实验性的,数据类型的API可能会稍有更改,因此应谨慎使用。但是Pandas建议在合理的地方使用这些数据类型,将来的版本将完善诸如regex匹配之类的特定于类型的操作性能。

 

默认情况下,Pandas不会自动将数据强制转换为这些类型。但是,如果明确指示Pandas,仍然可以使用它们。

 

>>> B =pd.Series(["goodbye", "cruel", "world"],dtype="string")>>> C = pd.Series([False, True, False], dtype="bool")>>> df.B = B, df.C = C>>> df.info()<class 'pandas.core.frame.DataFrame'>RangeIndex: 3 entries, 0 to 2Data columns (total 3 columns): #  Column  Non-Null Count  Dtype---  ------  --------------  ----- 0  A       3 non-null      int64 1  B       3 non-null      string 2  C       3 non-null      booldtypes: int64(1), object(1), string(1)memory usage: 200.0+ bytes

注意Dtype列现在如何反应新类型的string和bool。

 

新字符串dtype最实用的优势在于,可以从DataFrame中选择string列。这样可以更快地仅对数据集的文本成分进行分析。

 

df.select_dtypes("string")

以前,只能通过显式使用其名称来选择string类型列。

 

从今天开始,掌握Pandas 1.0的主要功能,全新优化开启使用吧~


推荐阅读专题

留言 点赞 发个朋友圈

我们一起分享AI学习与发展的干货

编译组:王馨、陈曼芳

相关链接:

https://towardsdatascience.com/top-features-of-pandas-1-0-26abff08d1b6

如需转载,请后台留言,遵守转载规范

推荐文章阅读

ACL2018论文集50篇解读

EMNLP2017论文集28篇论文解读

2018年AI三大顶会中国学术成果全链接

ACL2017 论文集:34篇解读干货全在这里

10篇AAAI2017经典论文回顾

长按识别二维码可添加关注

读芯君爱你

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值