查看原文
其他

DataFrame数组常用方法

爬虫俱乐部 Stata and Python数据分析 2022-03-15

本文作者:孙晓玲

文字编辑:孙晓玲

技术总编:张   邯

学习了Pandas的基本数据类型,今天为大家介绍Pandas中基本数据类型的常用操作方法,这里以DataFrame数组为例。

首先生成一个DataFrame数组,方法之前已经介绍这里将不再赘述,给出命令如下:

import numpy as npimport pandas as pddates = pd.date_range('20191101', periods=8)df = pd.DataFrame(np.random.randn(8, 5), index=dates,columns=list('abcde'))df


一、查看数据

1.查看顶部和尾部数据

当数据集庞大时,查看数据的基本情况通常只需查看顶部与尾部数据,即可得知数据概貌,可用.head().tail()函数分别查看头部、尾部数据,默认为显示5条数据,也可以传入数字指定你想要查看的数据条数。这里示范输出默认情况下前5条数据与指定后3条数据。

df.head()df.tail(3)


2.查看行列索引与值

本例中,行索引为日期索引dates,列索引为列表[a,b,c,d,e],值为交互式列表中的数据,可分别用.index、.columns.values属性查看行列索引与数值

df.indexdf.columnsdf.values

采用交互式输出方式,输出结果中除了行列索引,还包括其数据类型。这里行索引的数据类型为64位的datestime,是逐日型数据,当然还有逐月、逐年等其他类型,在生成datestime时传入不同的日期类型参数即可得到。这里的列索引类型为object,值为一个二维NumPy数组。


二、数据的描述性统计
1.快速描述性统计
与NumPy数组类似,Pandas数组也具有快速描述性统计方法,使用.describe()函数可以生成描述性统计,总结数据集分布的中心趋势,不包括空值,其语法结构如下
DataFrame.describe(percentiles=None, include=None, exclude=None)

示例如下

df.describe()

输出结果包括每一列的观测值数量、均值、标准差、最大值、最小值及重要的分位数。如果你想得到逐行的描述性统计结果,可对原数据进行转置再进行描述性统计。

df.T.describe()


2.常用的描述性统计方法

下表列出了Pandas数组中一些常用的描述性统计方法。

这里选取几个演示如下:

df.count()#计算每一列非空数值个数df.cumsum()

df.count()返回每一列非空数值个数,df.cumsum()返回随着日期的累积和。

df.quantile(0.3) #0.3分位数df.min()df.idxmin()

df.quantile(0.3)返回每一列的0.3分位数,df.min()返回每一列的最小值,df.idxmin()返回每一列最小值对应的日期索引。

动手操作,熟能生巧,快来练习一下吧~





对我们的推文累计打赏超过1000元,我们即可给您开具发票,发票类别为“咨询费”。用心做事,不负您的支持!
往期推文推荐
巧用局部宏扩展函数dir

过了14天潜伏期真的没事了?

Pandas基本数据类型介绍

NumPy数组基本介绍

“个性化”sortobs命令,教你实现排序自由

携手战疫,我们在行动

恭贺新春,平安顺遂|各省疫情关注度地图

过年观影指南(二)

过年观影指南(一)

egenmore隐藏功能——进制转换

相遇insobs,如暗室逢灯

数据可视化之地理坐标系

SFI:Stata与Python的数据交互手册(一)
Stata模拟构建朋友圈
一个粉丝的疑惑—— local和scalar
新的一年,效率满满~(下)

自科基金项目信息爬取

rename group批量修改变量名

关于我们



微信公众号“Stata and Python数据分析”分享实用的stata、python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。

此外,欢迎大家踊跃投稿,介绍一些关于stata和python的数据处理和分析技巧。
投稿邮箱:statatraining@163.com
投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存