我是一位经验丰富的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中尝试做同样的事情,将汇总的数据输出到数据框。
答案 0 :(得分:1)
在Python中,第一个按age_category性别分组,并按统计函数进行汇总,例如:
dt=df.groupby(['age','gender']).agg(['mean','max','min','count'])