我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

dataframepandas库里面的数据类型,类似以往概念中的二维数组。除了head()tail()可以查看首尾数据外,还可以通过describe()函数来对数据体做个总体的概述预览。

苏南大叔:初步理解鸢尾花数据集dataframe的describe方法返回值 - dataframe-describe
初步理解鸢尾花数据集dataframe的describe方法返回值(图2-1)

苏南大叔的“程序如此灵动”博客,记录苏南大叔的编程所学所想。本文对dataframe类型的describe()方法返回值进行初步探讨。测试环境:win10python@3.11.0pandas@1.5.3

获得dataframe对象

可以自己定义一个dataframe对象,参考文章:

也可以通过读取csv获得一个dataframe对象,参考文章:

本文是以tensorflow官方的鸢尾花数据集为基础的,所以,获得dataframe对象的方法如下:

import pandas as pd
data_url = "http://download.tensorflow.org/data/iris_training.csv"
column_names = ["萼长", "萼宽", "瓣长", "瓣宽", "种类"]
df = pd.read_csv(data_url, header=0, names=column_names)

执行.describe()

当然,这个.describe()有很多变种,本文仅仅致力于初步理解.describe(),所以这里仅仅做最常见情况的描述。

print(df.describe())

这里返回值如下:

             萼长         萼宽        瓣长        瓣宽         种类
count  120.000000  120.000000  120.000000  120.000000  120.000000
mean     5.845000    3.065000    3.739167    1.196667    1.000000
std      0.868578    0.427156    1.822100    0.782039    0.840168
min      4.400000    2.000000    1.000000    0.100000    0.000000
25%      5.075000    2.800000    1.500000    0.300000    0.000000
50%      5.800000    3.000000    4.400000    1.300000    1.000000
75%      6.425000    3.300000    5.100000    1.800000    2.000000
max      7.900000    4.400000    6.900000    2.500000    2.000000

苏南大叔:初步理解鸢尾花数据集dataframe的describe方法返回值 - describe-result
初步理解鸢尾花数据集dataframe的describe方法返回值(图2-2)

返回值分析

返回的数据分别是:

字段返回值说明
count计数
mean平均值
std标准差
min最小值
max最大值
25%分位数Q1
50%分位数Q2(中位数)
75%分位数Q3

1、计数count,这个比较好理解。
2、平均值meanvar方差,std标准差,参考文章:https://newsn.net/say/python-std.html
3、25%/50%/75%这几个分位数是计算得出来的值,并不一定实际存在。计算方法呢,也比较好理解。原理上是先求解对应位置,如果对应位置没有数,那么“(前一位数,后一个数)”按比例取得对应的数。

min理解为0%max理解为100%

返回值之方差var

值得特别说明的是:上述返回值中并没有var方差,虽然var方差就是std标准差的平方。但是,没有返回值就实际上提供了一个自行计算的方式:

df[列名].var()

或者直接获得一个series

df.var()

这个话题就比较大了,这里就暂埋伏笔。

更多.describe()内容

如果dataframe的数据列中存在着纯数字的列,就会返回上述数据,忽略非数字列。如果是其它类型的列(比如文本)的话,是返回其它的统计数据字段的,这种情况待后续更新。

如果忽略数据类型,返回所有值。而不是自动判断需要返回的值的话,可以使用:

df.describe(include="all")

结束语

本文中的.describe()方法,主要是用于更深刻的理解鸢尾花数据集的。所以对于更多的.describe()方法变种,不做更多的讨论。更多python相关经验文章,请点击下面的链接查看:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   python    pandas