我试图根据两列来映射值的出现。它工作得很好,多亏了马库斯在这个post。但是,我也希望它为没有计数的事件显示一个0(其中rating字段为空)。它当前忽略空值。在
如您所见,没有出现Critical,因此它们没有显示出来。我需要它显示0,如果那些环境/评级在数据帧中没有出现。在
基本上,我希望评分(比如Critical和othersp3)始终显示,这样即使没有Critical或Others的条目,对于该环境,它也会显示为0。在
以下是当前代码:csvfile = pd.read_csv("rawstats.csv", encoding = "ISO-8859-1", usecols=['Environment/s Affected', 'Rating'])
df = pd.DataFrame(csvfile)
df.groupby(['Environment/s Affected', (df['Rating'].isin(['1', '2']))]).size().rename(index={True: 'Critical', False: 'Others P3+'}, level=1).to_csv('summary.csv')
示例数据:Rating,Environment/s Affected
3,Env1
3,Env1
3,Env1
3,Env2
3,Env2
3,Env2
3,Env2
3,Env3
3,Env3
3,Env3
3,Env3
3,Env3
3,Env4
3,Env4
3,Env4
3,Env4
3,Env4
3,Env4
4,Test5
4,Test5
4,Test5
4,Test5
4,Test5
4,Test5
4,Test5
,Env1
,Env1
,Env3
,Env4
,Env1
谢谢!在
groupby不会显示NaN值,您需要先将它们替换为一个伪值:
例如,可以使用-1:
^{pr2}$您需要^{} by } 的第一级唯一值的所有组合:
MultiIndex
by ^{如果需要} :
^{pr2}$Critical
在最后一行添加^{相关问题 更多 >
编程相关推荐