如何在 Pandas 中使用基于标准值的 Count 函数

它分为A类和B类。


df :

Category    A      A      A       B       B 

CODE       U-01   U-02   U-03    U-04    U-05

n1          0      1      0       2       nan

n2          1      1      0       nan     nan

n3          3      0     nan       0       2

我想根据标准值“0”、“>0”和 nan 计算值。


我想要的输出表如下所示:


Category                 A                   B

Standard           0    >0    nan      0    >0     nan 

 n1                2     1     0       0     1      1

 n2                1     2     0       0     0      2

 n3                0     1     1       1     1      0

example) "n1-> Standard : 0 " is A&U-01, A&U-03 So, 2

请帮我,,


回首忆惘然
浏览 110回答 1
1回答

桃花长相依

用于DataFrame.unstackreshape DataFramefor Series with Multiindex,然后将值 gretaer 转换0为>0,将缺失值替换为字符串并使用 reshape bynan计算它们:SeriesGroupBy.value_countsSeries.unstackdf1 = (df.unstack()         .mask(lambda x: x.gt(0), '>0')         .fillna('nan')         .groupby(level=[0, 2])         .value_counts()         .unstack([0,2], fill_value=0)         .rename(columns={0:'0'}))print (df1)Category  A         B                 0 >0 nan >0 nan  0n1        2  1   0  1   1  0n2        1  2   0  0   2  0n3        1  1   1  1   0  1
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python