相当于SAS Proc Summary过程的Python / Pandas

时间:2019-05-17 22:13:13

标签: pandas sas

我是一位经验丰富的SAS程序员,正在转换为Python / Pandas。我在SAS中的工作中经常使用PROC Summary创建摘要数据文件,随后可在以后的SAS程序中将其与其他文件结合使用。 SAS中的PROC Summary过程非常强大,易于使用,并且直接编写代码。我还没有在Pandas中找到一种可比的方法,它功能强大,易于使用并且可以直接进行编码。由于我是Python / Pandas的新手,所以我想知道是否有一种方法可以做到这一点。

这将为age_category和性别的每个唯一组合创建一个包含9列的简单输出文件。

proc summary data='input file' nway;
 class age_category gender;
 var weight_kg height_cm;
 output out='output file'
   mean(weight_kg) = weight_avge
   max(weight_kg) = weight_max
   min(weight_kg) = weight_min
   mean(height_cm) = height_avge
   max(height_cm) = height_max
   min(height_cm) = height_min
   n(height_cm) = n_of_cases
  ; 
run; 

我正在Pandas中尝试做同样的事情,将汇总的数据输出到数据框。

1 个答案:

答案 0 :(得分:1)

在Python中,第一个按age_category性别分组,并按统计函数进行汇总,例如:

dt=df.groupby(['age','gender']).agg(['mean','max','min','count'])