我有一个具有dtype=object,即类别变量的数据框,我想为其提供每个级别的计数。我希望结果是所有分类变量的漂亮摘要。
为了实现上述目标,我尝试了以下方法:
(第1行)获取所有对象类型变量的名称
(第2行)计算每个级别(a,b共个v1)的观察次数
(第3行)重命名该列,使其显示为“ count”
stringCol = list(df.select_dtypes(include=['object'])) # list object of categorical variables
a = df.groupby(stringCol[0]).agg({stringCol[0]: 'count'})
a = a.rename(index=str, columns={stringCol[0]: 'count'}); a
count
v1
a 1279
b 2382
我不确定如何在打印所有字符串列计数的情况下优雅地获得以下结果。像这样(仅v1和v4示出,但是应该能够打印这样的结果的列的数目可变):
count count
v1 v4
a 1279 l 32
b 2382 u 3055
y 549
我可以想到的方式是:
选择一个元素 stringCol
计算每组列的计数。
将结果存储在Pandas数据框中。
将熊猫数据框存储在一个对象中(列表?)
重复
如果的最后一个元素stringCol完成,则中断。
但是肯定有比这更好的方法,只是不确定如何去做。
相关分类