熊猫groupby 0值(如果不存在)

贝吉塔

我有这样的代码

frame[frame['value_text'].str.match('Type 2')  | frame['value_text'].str.match('Type II diabetes')].groupby(['value_text','gender'])['value_text'].count()

返回的序列像

value_text            gender      count
type 2                  M           4
type 2 without...       M           4
                        F           3

我想要的是

 value_text               gender      count
    type 2                  M           4
                            F           0
    type 2 without...       M           4
                            F           3

我想包括所有性别的计数,即使数据框中没有记录。我怎样才能做到这一点?

彼得·莱姆比格勒

尝试附加.unstack().fillna(0).stack()到当前行,如下所示:

frame[frame['value_text'].str.match('Type 2')  |
      frame['value_text'].str.match('Type II diabetes')]\
.groupby(['value_text','gender'])['value_text'].count()\
.unstack().fillna(0).stack()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章