
[英]pandas: count the number of unique occurrences of each element of list in a column of lists
[英]Count number of each unique value in pandas column [duplicate]
我有一个像这样的 dataframe:
df = pd.DataFrame(index=[1,2,3,4,5,6,7,8,9,10,11,12])
df['group'] = [1,1,1,1,1,1,2,2,2,2,2,2]
df['Sex'] = ['male', 'female','male', 'male','male', 'female','male', 'male','male', 'female','female', 'female',]
df
group Sex
1 1 male
2 1 female
3 1 male
4 1 male
5 1 male
6 1 female
7 2 male
8 2 male
9 2 male
10 2 female
11 2 female
12 2 female
每组有6个人。 有些是男性,有些是女性。 我想得到一个 dataframe ,它计算组中每个group
的男性人数和女性人数。
例如:
结果如何呈现的细节对我来说并不重要。 我曾尝试使用 groupby,但没有 function (count, sum, mean, nunique ...) 告诉我男性和女性之间的比例。
希望你能帮我!
使用groupby()
方法、 value_counts()
方法和unstack()
方法:
result=df.groupby('group')['Sex'].value_counts().unstack()
现在,如果您打印result
,您将得到:
Sex female male
group
1 2 4
2 3 3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.