使用describe和dtypes创建自定义函数时出现错误

时间:2019-08-30 04:45:59

标签: python pandas

目标是在python / pandas中创建自定义函数,以将输出作为数据帧提供。 我想对给定数据框的数据框以及dtypes进行汇总/描述。

data = {'Name':['Tom', 'Jack', 'nick', 'juli'], 'marks':[99, 98, 95, 90]} 
df = pd.DataFrame(data, index =['rank1', 'rank2', 'rank3', 'rank4']) 
df 

def inspect(data):
    return pd.DataFrame({"Type":data.dtypes,
                         "Describe":data.describe(include='all'),
                        })

当我运行此功能

inspect(df)
Output:

        Type    Describe
Name    object  (N, a, m, e)
marks   int64   (m, a, r, k, s)


Desired Ouput:

    count   unique  top freq    mean    std min 25% 50% 75% max   dtypes
Name    4     4     nick    1   NaN     NaN NaN NaN NaN NaN NaN   object
marks   4   NaN     NaN NaN     92.5    2.88 90 90 92.5 95 95     int64


1 个答案:

答案 0 :(得分:1)

在熊猫中,有必要使用0.25.0转置并通过DataFrame.assign添加新列:

def inspect(data):
    return data.describe(include='all').T.assign(Type=data.dtypes)

print (inspect(df))
      count unique   top freq  mean      std  min    25%   50%    75%  max  \
Name      4      4  Jack    1   NaN      NaN  NaN    NaN   NaN    NaN  NaN   
marks     4    NaN   NaN  NaN  95.5  4.04145   90  93.75  96.5  98.25   99   

         Type  
Name   object  
marks   int64