python pandas总结名义变量(计数)
发布时间:2020-12-20 11:54:31 所属栏目:Python 来源:网络整理
导读:我有以下数据框: KEY PROD PARAMETER Y/N1 AAA PARAM1 Y1 AAA PARAM2 N1 AAA PARAM3 N2 AAA PARAM1 N2 AAA PARAM2 Y2 AAA PARAM3 Y3 CCC PARAM1 Y3 CCC PARAM2 Y3 CCC PARAM3 Y 我有兴趣通过PROD和PARAMETER列汇总Y / N列值并获得以下输出: PROD PARAM Y N
我有以下数据框:
KEY PROD PARAMETER Y/N 1 AAA PARAM1 Y 1 AAA PARAM2 N 1 AAA PARAM3 N 2 AAA PARAM1 N 2 AAA PARAM2 Y 2 AAA PARAM3 Y 3 CCC PARAM1 Y 3 CCC PARAM2 Y 3 CCC PARAM3 Y 我有兴趣通过PROD和PARAMETER列汇总Y / N列值并获得以下输出: PROD PARAM Y N AAA PARAM1 1 1 AAA PARAM2 1 1 AAA PARAM3 1 1 CCC PARAM1 1 0 CCC PARAM2 1 0 CCC PARAM3 1 0 而Y和N值是来自原始数据帧的Y / N列值的计数. 解决方法
您可以通过创建值为1的附加列来使用
pivot_table ,因为它们无关紧要(您只计算它们)
df['Y/Ncount'] = 1 df = df.pivot_table(index=['PROD','PARAMETER'],columns=['Y/N'],values=['Y/Ncount'],aggfunc=sum,fill_value=0) df.columns = [col for col in df.columns.get_level_values(1)] df.reset_index() 在这种情况下使用的最简单操作是 pd.crosstab([df['PROD'],df['PARAMETER']],df['Y/N']) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |