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

整理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

工信部规范APP推荐下载,未经用户同意不得强制或自动下载APP3月3日工信部消息,近日,有网友和媒体反映部分网站在用户浏览页面信息时,强制要求下载APP问题。工业和信息化部信息通信管理局对此高度重视,立即组织核查,并于日前召开行政指导会,督促HarmonyOS3新机曝光,6000mAh512GB或成四千档,华为不再高调在华为麒麟芯片受阻后,虽然没有得到代工厂的芯片支持,但是华为还是一直在投入研发自己的芯片,够希望做到全国产华为手机。其实华为早期就在自己的系统级芯片上布局,一直在准备卷土重来,再次配合电视很安逸家用桌面超重低音炮56元家里的电视音响太单薄?电视的墙体不够,声音自然不会特别好,想要好的声音,还是得配置一个音响产品。现在电视基本都支持蓝牙,配合一个低音炮产品,可以很好的提升观影氛围。联想B09这款音蓝色控必备!四款最受欢迎的数码产品最低只需799元在数码圈,每年都会有新的流行色出现,要说最近两年最流行的颜色,那蓝色一定有一席之地。蓝色作为冷色调中最冷的色彩,很容易让人联想到海洋天空湖水等等,能够给人一种冷静和浪漫的感觉。不过外媒俄罗斯人又能购买苹果所有产品了参考消息网3月3日报道据消息报报道,在俄罗斯专营苹果产品的reStore公司于2日停业,但3日又重新开业。该公司发言人说,它在俄25个城市的所有门店目前正常运营,出售的品类跟先前完将物联网设备监控作为产品可靠性改进工具文章来源将物联网设备监控作为产品可靠性改进工具CNXSoftware中文站备注这是Toradex软件产品经理RenatoKiss的客座文章,以温度监控为例,解释了IoT设备监控如何五套Alibaba2022小册!涵盖Java知识点面试题开发手册机器学习最近整理了阿里五套最新的笔记,分别是Java后端30大核心知识点总结2022最近金三银四面试题总结阿里巴巴Java开发规范手册(2022版)SpringCloudAlibaba全解iPhone14Pro渲染图5490毫安34W磁吸,还有两大升级让果粉膜拜苹果新品发布会已经正式宣布了日期,不过这次发布会中预计不会发布iPhone14系列,而是iPhoneSE3。对于iPhone14系列可能才是消费者真正期待的手机,不过有消息表示就算紧跟年度流行色!iPhone13Pro紫色版3月11日发布世界权威色彩研究机构潘通正式公布了2022年度流行色VeryPeri长春花蓝。它在色调上既包括了蓝色,同时混合了紫红色的基调,展现出一种活泼欢快的态度和充满活力的存在感。不少网友都苹果春季发布会终于来了!!3月9日凌晨2点今天早上一睁眼,苹果公众号公布了春季发布会的时间,于3月9日凌晨2点举行。千呼万唤始出来,昨天还有消息称苹果将会推迟春季发布会,今天苹果就官宣了,和我们开了个大大的玩笑!预计本次发佳能全画幅单反和微单相机各有什么优缺点?哪款型号值得入手?说起单反,很多人首先想到的就是佳能。这也难怪,因为感动常在嘛。其实对于绝大多数用户来说,感动不感动是次要的,主要是好用而且性价比高。不过佳能也不负众望,在单反相机方面一直都力压尼康
iOS14。7beta5暗示iOS或将支持第三方应用来源?前几天苹果向全体开发者用户和公测用户推送了iOS14。7beta5(18G5063a),其中主要更新仍是针对底层性能优化和bug修复。但还有一个小的细节改动可能会改变整个iOS生态希望破灭!两大游戏平台终止合并,腾讯3年努力付诸东流国内互联网行业发展迅猛,在短短数年的时间里已经领先全球,阿里在电商行业无人能及,腾讯的社交和游戏一家独大,美团凭借外卖闯出了一片新天地,这些互联网企业都有一个共同的特点那就是各自拥外媒关注游戏直播平台虎牙斗鱼合并被拒据美联社香港7月10日报道,中国市场监管机构周六在一项反垄断调查后阻止了腾讯支持的游戏直播平台斗鱼与虎牙的合并。报道称,虎牙和斗鱼是中国此类企业中最大的两家。它们提供视频游戏直播服苹果A15处理器曝光,第二代5nm工艺,真正的顶级芯片苹果一直主打高端市场,在处理器性能方面一直都是排在最前面,每年稳步推进A系列处理器的研发工作,在最近几年苹果还自研GPU图形能力更是超越友商不少产品,目前网上已经曝光最新A15处理蓝牙耳机固件升级需要的注意事项大家升级蓝牙耳机的固件时是不是会出现升级失败的场景,接下来我就说一下蓝牙耳机固件升级的一些注意的地方。首先肯定就是要打开我们手机的蓝牙,然后有些手机需要打开地理位置,就都打开吧,把Win11怎么添加蓝牙设备?有时我们需要使用计算机和手机使用蓝牙传输。如果您不连接蓝牙,则无法使用它,您希望在Win11系统中搜索蓝牙设备,因此如何使用Windows11添加蓝牙设备?如果你想拥有网友,你仍然库克ampampquot忽悠了大家ampampquot,不是苹果13而是12S,120Hz屏幕9月精湛来袭笔歌科技独家报道苹果9月份新机最终命名为12S,不是之前曝出来的苹果13,虽然在媒体采访中库克声称13,但鉴于手机整体迭代不大,最终还是取名为12S,一起来围观。01不是苹果13而当4388元的华为P50,遇上5399元的iPhone13,为何宁可选苹果?今年下半年旗舰市场,虽然缺少了三星Note21系列,但华为P50和iPhone13的较量却也吸引着不少消费者目光。目前两款手机都还未发布,产品配置外观,价格却都已被产业链曝光。据悉事与愿违,苹果小屏时代将划上句号?iPhone13mini或成最后绝唱如今市面上在售的小屏手机可谓屈指可数,为了追求更好的视觉效果以及方便用户操作,现在大部分智能手机的屏幕尺寸都设定在6。3英寸以上。常言道萝卜青菜各有所爱,不少消费者仍然对小屏手机钟麒麟芯片鸿蒙OS2128G,仅售6099元!没有5G加持依然不会绝唱提到华为手机,大家都觉得麒麟芯片性能强大,而且使用起来一点都没有卡顿的现象。不过由于麒麟芯片的产能受到限制的原因,华为手机的产能也受到了非常大的影响。不过华为为了解决麒麟芯片产能不有人说,谁能解决电池的问题,谁就能成为下一个世界首富,你怎么看?一电池的发展史首先,我们来大致看一下电池的发展史。1800年,意大利物理学家亚历山德罗伏特发明了世界上第一块电池。1859年,由法国物理学家贾斯顿普兰发明了最早可以充电的电池,铅酸