【发布时间】:2019-01-03 07:37:43
【问题描述】:
我有一些按性别划分的电话设备使用数据,我想在 pandas 中使用这些数据。
我需要计算这些值并使用这些计数创建一个新列。
这是df 数据的样子:
Sex Apple Samsung Huawei Tecno
Male Yes Yes No No
Female Yes Yes No No
Female Yes Yes No No
Male Yes Yes No No
Male No Yes No No
Female No No No No
Female Yes Yes No No
Male Yes Yes No No
Male Yes Yes No No
Male Yes Yes No No
Female Yes Yes No No
Female Yes Yes No No
Female Yes Yes No No
Female Yes Yes No No
Female No Yes No No
Female Yes Yes No Yes
Male Yes Yes No No
这就是我想要的:
Sex Response Apple Samsung Huawei Tecno
Male Yes 6 7 0 0
No 1 0 7 7
Female Yes 8 9 0 1
No 2 1 10 9
我绕着圈子试图让它工作,我的代码太乱了,我有点羞于发布它。我至少已经开始这样做了:
for name, group in df.groupby('Sex'):
print(name)
print(group)
我相信我可以通过groupby 和unstack 的某种组合来实现这一点。另外,如果有人能找到关于多级数据分组的有价值的教程,我将不胜感激。
【问题讨论】:
标签: python pandas dataframe group-by