加入收藏 | 设为首页 | 会员中心 | 我要投稿 常州站长网 (https://www.0519zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

带你一起盘点,Pandas1.0的核心功能

发布时间:2021-08-22 16:10:52 所属栏目:大数据 来源:互联网
导读:注意:Pandas 1.0.0rc已于1月9日发布,先前的版本为0.25。 Pandas首个全新主要发行版本包含许多重要功能:更完善的数据框自动汇总、更全面的输出格式、全新的数据类型以及文档站点。 在全新的文档站点上,可以找到完整的发行说明,但小芯认为,技术含量较低
注意: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 --version 
pip 19.3.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)$ python--version 
Python 3.7.5 
用户可以确认一切正常,并且Pandas使用的是正确版本。
>>> import pandas as pd 
>>> pd.__version__ 
1.0.0rc0 
使用DataFrame.info更好的自动汇总
笔者最喜欢的新功能是优化之后的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 2 
Data 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      object 
dtypes: 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 2 
Data 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      bool 
dtypes: 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的主要功能,全新优化开启使用吧~

(编辑:常州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读