例えば以下のようなpandas.DataFrameの表がある場合に
df
|state|a|b|c|
| ---- | ---- |
|0|0|0|1|
|0|0|1|1|
|1|0|1|1|
|1|1|1|0|
以下のようにa,b,cの0,1ごとのstate=1の出現率を計算させたいです。
||0|1|
| ---- | ---- |
|a|0.33|1|
|b|0|0.67|
|c|1|0.33|
やったこと
python
1df.groupby('state').apply(lambda d: d.sum())
これだとstateの0,1ごとに各列の1の出現率となり、やりたいことと違うのはわかるのですが、
そのあとどうすればいいかわかりません
環境
Python 3.8.5
Pandas 1.1.3
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/04 06:40
2021/02/04 06:47