pandas 的describe函数的参数详解

基本上pandas的describe函数大家都会使用,我之前也是,直接data.describe(),就把数据的统计信息给打印出来了。但是今天因某些原因研究了一下describe的参数,才知道其实describe还有很多其他的作用。

这是官方文档:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.describe.html

pandas 的describe函数的参数详解_第1张图片

截个图,可以看出它有三个参数。

第一个percentiles,这个参数可以设定数值型特征的统计量,默认是[.25, .5, .75],也就是返回25%,50%,75%数据量时的数字,但是这个可以修改的,举例如下:这个数据是kaggle的泰坦尼克数据集。

train_df['Parch'].describe(percentiles=[.75, .8])
Out[10]: 
count    891.000000
mean       0.381594
std        0.806057
min        0.000000
50%        0.000000
75%        0.000000
80%        1.000000
max        6.000000
Name: Parch, dtype: float64

Parch这一列代表父母与孩子的比例,这就说明有超过75%的乘客没有和他们的父母或者孩子一起去。可以看出这个参数在分析数值型特征的分布时十分有用。

第二个参数:include,这个参数默认是只计算数值型特征的统计量,当输入include=['O'],会计算离散型变量的统计特征,(唉,羞愧,学了这么久这才知道),举个例子如下:

train_df.describe(include=['O'])
Out[13]: 
                                Name   Sex Ticket Cabin Embarked
count                            891   891    891   204      889
unique                           891     2    681   147        3
top     Panula, Master. Eino Viljami  male   1601    G6        S
freq                               1   577      7     4      644

可以看出它直接给出了非空数量count,唯一值种类unique,出现最多的类型top和出现次数freq,简直是贴心。这对以后提特征绝对是个便利。

此外当你传参数是‘all’的时候,会把数值型和离散型特征的统计都进行显示。

第三个参数的设计就更贴心了,第二个参数是你可以指定选那些,第三个参数就是你可以指定不选哪些,人性化设计。这个参数默认不丢弃任何列,相当于无影响。

你可能感兴趣的:(机器学习,数据挖掘)