范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

整理20个Pandas统计函数

  大家好,最近整理了pandas中20个常用统计函数和用法,建议收藏学习~
  模拟数据
  为了解释每个函数的使用,模拟了一份带有空值的数据: import pandas as pd import numpy as np  import matplotlib.pyplot as plt import seaborn as sns  df = pd.DataFrame({     "sex":["male","male","female","female","male"],     "age":[22,24,25,26,24],     "chinese":[100,120,110,100,90],     "math":[90,np.nan,100,80,120],  # 存在空值     "english":[90,130,90,80,100]})  df
  描述统计信息describe
  descirbe方法只能针对序列或数据框,一维数组是没有这个方法的;同时默认只能针对数值型的数据进行统计: DataFrame.describe(percentiles=None,include=None,exclude=None) percentiles:可选择的百分数,列表形式;数值在0-1之间,默认是[.25,.5,.75]  include/exclude:包含和排除的数据类型信息
  返回的信息包含: 非空值的数量count;特例:math字段中有一个空值  均值mean  标准差std  最小值min  最大值max  25%、50%、75%分位数  df.describe()
  添加了参数后的情况,我们发现: sex字段的相关信息也被显示出来  显示的信息更丰富,多了unique、top、freq等等
  非空值数量count
  返回的是每个字段中非空值的数量
  In [5]: df.count()
  Out[5]: sex        5 age        5 chinese    5 math       4  # 包含一个空值 english    5 dtype: int64 求和sum
  In [6]: df.sum()
  在这里我们发现:如果字段是object类型的,sum函数的结果就是直接将全部取值拼接起来
  Out[6]: sex        malemalefemalefemalemale # 拼接 age                             121  # 相加求和 chinese                         520 math                          390.0 english                         490 dtype: object 最大值max
  In [7]: df.max()
  针对字符串的最值(最大值或者最小值),是根据字母的ASCII码大小来进行比较的: 先比较首字母的大小  首字母相同的话,再比较第二个字母
  Out[7]: sex         male   age           26 chinese      120 math       120.0 english      130 dtype: object 最小值min
  和max函数的求解是类似的:
  In [8]: df.min()
  Out[8]: sex        female age            22 chinese        90 math         80.0 english        80 dtype: object 分位数quantile
  返回指定位置的分位数
  In [9]: df.quantile(0.2)
  Out[9]: age        23.6 chinese    98.0 math       86.0 english    88.0 Name: 0.2, dtype: float64
  In [10]: df.quantile(0.25)
  Out[10]: age         24.0 chinese    100.0 math        87.5 english     90.0 Name: 0.25, dtype: float64
  In [11]: df.quantile(0.75)
  Out[11]: age         25.0 chinese    110.0 math       105.0 english    100.0 Name: 0.75, dtype: float64
  通过箱型图可以展示一组数据的25%、50%、75%的中位数:
  In [12]: plt.figure(figsize=(12,6))#设置画布的尺寸  plt.boxplot([df["age"],df["chinese"],df["english"]],            labels = ["age","chinese","english"], #            vert=False,             showmeans=True,            patch_artist = True,             boxprops = {"color":"orangered","facecolor":"pink"} #            showgrid=True            )  plt.show()
  箱型图的具体展示信息:
  均值mean
  一组数据的平均值
  In [13]: df.mean()
  Out[13]: age         24.2 chinese    104.0 math        97.5 english     98.0 dtype: float64
  通过下面的例子我们发现:如果字段中存在缺失值(math存在缺失值),此时样本的个数会自动忽略缺失值的总数
  In [14]: 390/4  # 个数不含空值
  Out[14]: 97.5 中值/中位数median
  比如:1,2,3,4,5 的中位数就是3
  再比如:1,2,3,4,5,6 的中位数就是 3+4 = 3.5
  In [15]: df.median()
  Out[15]: age         24.0 chinese    100.0 math        95.0 english     90.0 dtype: float64 众数mode
  一组数据中出现次数最多的数
  In [16]: df.mode()
  Out[16]:
  最大值索引idmax
  idxmax() 返回的是最大值得索引
  In [17]: df["age"].idxmax()
  Out[17]: 3
  In [18]: df["chinese"].idxmin()
  Out[18]: 4
  不能字符类型的字段使用该函数,Pandas不支持:
  In [19]: df["sex"].idxmax()
  最小值索引idxmin
  返回最小值所在的索引
  In [20]: df["age"].idxmin()
  Out[20]: 0
  In [21]: df["math"].idxmin()
  Out[21]: 3
  In [22]: df["sex"].idxmin()
  不能字符类型的字段使用该函数,Pandas不支持:
  方差var
  计算一组数据的方差,需要注意的是:numpy中的方差叫总体方差,pandas中的方差叫样本方差
  标准差(或方差)分为 总体标准差(方差)和 样本标准差(方差) 前者分母为n,右pian的;后者分母为n-1,是无偏的  pandas里是算无偏的;numpy里是有偏的
  In [23]: df.var()
  Out[23]: age          2.200000 chinese    130.000000 math       291.666667  # pandas计算结果 english    370.000000 dtype: float64
  In [24]: df["math"].var()
  Out[24]: 291.6666666666667
  In [25]: np.var(df["math"])  # numpy计算结果
  Out[25]: 218.75
  In [26]: np.var(df["age"])
  Out[26]: 1.7600000000000002
  In [27]: np.var(df["english"])
  Out[27]: 296.0 标准差std
  返回的是一组数据的标准差
  In [28]: df.std()
  Out[28]: age         1.483240 chinese    11.401754 math       17.078251 english    19.235384 dtype: float64
  In [29]: np.std(df["math"])
  Out[29]: 14.79019945774904
  In [30]: np.std(df["english"])
  Out[30]: 17.204650534085253
  In [31]: np.std(df["age"])
  Out[31]: 1.32664991614216
  如何理解pandas和numpy两种方法对方差的求解不同:
  平均绝对偏差mad
  In [32]: df.mad()
  Out[32]: age         1.04 chinese     8.80 math       12.50 english    13.60 dtype: float64
  以字段age为例:
  In [33]: df["age"].mad()
  Out[33]: 1.0399999999999998
  In [34]: df["age"].tolist()
  Out[34]: [22, 24, 25, 26, 24]
  In [35]: age_mean = df["age"].mean() age_mean
  Out[35]: 24.2
  In [36]: (abs(22-age_mean) + abs(24-age_mean) + abs(25-age_mean)   + abs(26-age_mean) + abs(24-age_mean)) / 5
  Out[36]: 1.0399999999999998 偏度-skew
  偏度(skewness),是统计数据分布偏斜方向和程度的度量,是统计数据分布非对称程度的数字特征。
  偏度(Skewness)亦称偏态、偏态系数,表征概率分布密度曲线相对于平均值不对称程度的特征数。
  直观看来就是密度函数曲线尾部的相对长度。定义上偏度是样本的三阶标准化矩:
  In [37]: df.skew()
  Out[37]: age       -0.551618 chinese    0.404796 math       0.752837 english    1.517474 dtype: float64
  In [38]: df["age"].skew()
  Out[38]: -0.5516180692881046 峰度-kurt
  返回的是峰度值
  In [39]: df.kurt()
  Out[39]: age        0.867769 chinese   -0.177515 math       0.342857 english    2.607743 dtype: float64
  In [40]: df["age"].kurt()
  Out[40]: 0.8677685950413174
  In [41]: df["math"].kurt()
  Out[41]: 0.3428571428571434       绝对值abs
  返回数据的绝对值:
  In [45]: df["age"].abs()
  Out[45]: 0    22 1    24 2    25 3    26 4    24 Name: age, dtype: int64
  如果存在缺失值,绝对值函数求解后仍是NaN:
  In [46]: df["math"].abs()
  Out[46]: 0     90.0 1      NaN 2    100.0 3     80.0 4    120.0 Name: math, dtype: float64
  绝对值函数是针对数值型的字段,不能对字符类型的字段求绝对值:
  In [47]: # 字符类型的数据报错 df["sex"].abs()
  元素乘积prod
  In [48]: df.prod()
  Out[48]: age        8.236800e+06 chinese    1.188000e+10 math       8.640000e+07 english    8.424000e+09 dtype: float64
  In [49]: df["age"].tolist()
  Out[49]: [22, 24, 25, 26, 24]
  In [50]: 22 * 24 * 25 * 26 * 24
  Out[50]: 8236800 累计求和cumsum
  In [51]: df.cumsum()
  累计乘积cumprod
  In [52]: df["age"].cumprod()
  Out[52]: 0         22 1        528 2      13200 3     343200 4    8236800 Name: age, dtype: int64
  In [53]: df["math"].cumprod()
  Out[53]: 0          90.0 1           NaN 2        9000.0 3      720000.0 4    86400000.0 Name: math, dtype: float64
  In [54]: # 字符类型字段报错 df["sex"].cumprod()
  20个统计函数
  最后再总结下Pandas中常用来描述统计信息的函数:
  原文链接:
  https://mp.weixin.qq.com/s/QVAPbiAKzD0OS0V2VQN2BA

冬季游河北福地过大年唐山皮影乐园新春欢乐值拉满冬季游河北福地过大年这么近那么美周末到河北游购乡村冬季游河北福地过大年这两天,唐山皮影乐园新春欢乐值拉满,皮影兔陪伴了很多大朋友小朋友,在中国唐山皮影主题乐园欢欢喜喜过大年!自皮影孙洁旅游行业复苏元年多措并举抢抓旅游业复苏新机遇2023年是旅游行业的大年,新十条的发布疫情的全面放开都为文旅行业带来了全面复苏的东风,无论对于酒店景区,还是航司餐饮等行业来说,2023年都是非常值得期待的一年。中国游客的韧性非锂矿龙头利润一年暴增上百亿,新晋巨头奋起直追仍难以撼动?作者泰罗,编辑小市妹2022年,锂价格的大幅上涨让锂矿企业赚的盆满钵满。1月29日晚,国内锂业龙头赣锋锂业发布了业绩预告,预计2022年净利润180亿元220亿元,同比增长2443这么规范?某IPO现场检查利润表实质就改了管理费用一个科目?本文首发于公众号投行实务观声明投行实务观原创,欢迎转发,但未经授权,不得随意抄袭转载。湖南华慧新能源股份有限公司2021年12月23日申报创业板IPO,公司生产的产品主要分为磷酸铁中国游客回归将提振全球旅游业参考消息网1月28日报道据美国消费者新闻与商业频道网站1月27日报道,中国农历新年假期的初步数据显示,中国人正在摆脱疫情,外出旅行。野村证券中国首席经济学家陆挺在26日的一份报告中Linux程序安装包管理Linux系统有许多服务,但这些服务都需要安装升级或卸载查询及效验,那就需要用到包管理工具,包管理器主要用于打包包管理(安装升级卸载查询及效验)。打包就是按照既定规范存放于一个单一现实中的三体半人马a星!天文观测,这里确实有颗类地行星三颗太阳,它们无规律的运行,混乱的引力拉扯着行星到处飘荡,天上有时一颗太阳有时两颗有时三颗。寒冷酷热白昼让这里的文明苦不堪言。为了适应这里,延续文明,他们脱水浸泡。这就是最近热播三北京冰雪运动热消费势头旺国家速滑馆冰丝带里,新手们推着滑冰助手蹒跚学步北京延庆山地雪场上,滑雪板扬起片片雪花京张高铁轨道上,一列列冰雪专列送旅客去河北崇礼过年。北京冬奥会冬残奥会后的首个冰雪季,全民冰雪运从行星运行轨道到引力弹弓,你看懂流浪地球了吗?在流浪地球2描绘的流浪地球计划中,一个关键的节点是借助木星来让地球加速到足以离开太阳系。1月27日,张朝阳的物理课第一百一十八期开播,为广大网友带来了一节别开生面的物理课。课上张朝持续火爆,尼山圣境将热闹的年味延续至元宵节!大年初六,尼山圣境再获山东广播电视台山东新闻联播深入报道。整个春节假期,景区内汇聚了丰富多彩的民俗活动以及独具特色的明礼互动活动。这个春节,尼山圣境诚意满满的新春福利高科技的沉浸式雄安新区重点项目集中开工全年投资超2000亿元央视网消息经过五年多的规划建设,雄安新区城市框架全面拉开,新区城市雏形初步显现,今年又将有哪些重大项目?记者了解到,雄安新区开工的这一批项目聚焦启动区和起步区,新开工项目比重超过3
三星GalaxyA54手机国行版上线官方商城配Exynos1380,2999起IT之家4月8日消息,此前三星面向国际市场发布了新机GalaxyA545G。近日,三星GalaxyA545G国行版本正式推出,并已上线各渠道官方商城。新机共有8GB128GB以及8泰山首次官方回应吴兴涵事件!郝伟俱乐部很好解决了这个问题北京时间4月7日,超级杯山东泰山和武汉三镇的赛前发布会上,山东泰山主帅郝伟出席。在发布会上,郝伟被问到备战期球队出现了多个绯闻和负面新闻,对此郝伟表示,俱乐部出现这样的新闻不奇怪,惠普打印机曝出9。1分严重漏洞,官方预估需要90天完成修复IT之家4月8日消息,惠普官方近日发布安全公告,发现了编号为CVE20231707的严重漏洞,其CVSS评分为9。1分。包括HPEnterpriseLaserJet和HPLaserCBA官方崔永熙当选第四期月度最佳星锐球员直播吧4月7日讯今日,CBA官方宣布,广州男篮球员崔永熙当选20222023赛季CBA联赛第四期月度最佳星锐球员。原文如下恭喜龙狮篮球俱乐部崔永熙荣膺20222023赛季CBA联赛vivo急眼了!16GB旗舰下跌1610元,256GB120WE5屏OIS光学防抖两个品牌互相竞争,结果把第三方的品牌给打没了,这种情况在商业中经常见到,例如之前加多宝和王老吉的竞争,就差点让另一个凉茶品牌和其正被淘汰出局,因为当两个品牌开展激烈竞争的时候,会让感人配置旗舰中兴Axon50出炉,Axon40低至百元改写感人史4月9日消息,据数码闲聊站爆料,中兴Axon50Ultra将首发5GNTN卫星通讯。这是中兴去年公布了运营商5GNTN技术,它是3GPP在R17阶段制定的基于新空口技术的终端与卫星天眼查重构知识图谱一场数字经济下商查行业的大变革想要与某家公司合作,或投资一家公司,不少人会通过商业查询平台深度了解目标公司的股权结构,高效掌握资本关系。然而一旦遇到企业间企业股东间接持股代为持股交叉持股等情况,爆雷之处又往往隐爱奇艺龚宇网络视听行业高质量发展需去泡沫精品化南都讯记者林文琪近日,主题为新征程,再出发的第十届中国网络视听大会在成都落下帷幕。爱奇艺创始人CEO龚宇出席开幕式并发表主题为潜心笃行,迈向高质量发展演讲。龚宇用四个特点概括网络视助力中国高铁创新发展,中车长客再添铁路行业科技创新基地记者从中车长客股份公司获悉,近日,在国家铁路局第二批铁路行业科技创新基地授牌仪式及创新基地座谈会上,中车长客股份公司更高速动车组系统集成铁路行业工程研究中心科技创新基地获得国家铁路酒店智能化升级华为x携住开启酒店行业变革新方向随着信息技术的进步,酒店的智能化已经发展了近十年。但是,在发展的初期,都是一些点上的智能化,并没有给酒店的管理运营以及用户的体验上带来本质的飞跃。如今,各种创新技术逐步成熟,并且伴官宣!扫描全能王成为魅族Flyme10技术合作伙伴近期,魅族Flyme10操作系统正式发布,通过系统体验隐私安全平台支撑跨屏联动等方面的提升,带给用户更流畅的使用感受。合合信息旗下扫描全能王作为Flyme10技术合作伙伴,与Fly