web-dev-qa-db-ja.com

合計の割合の列をPandas dataframeに追加します

列の値のカウントを取得するためにgroupby()を実行しているデータフレームがあります。 「合計のパーセンテージ」の列を追加しようとしています。どうすればいいのかわかりません。

私はいくつかのgroupbyオプションを調べましたが、適合するものを見つけることができません。

私のデータフレームは次のようになります:

              DAYSLATE
DAYSLATE          
-7 days          1
-5 days          2
-3 days          8
-2 days          9
-1 days         45
0 days         589
1 days          33
2 days           8
3 days          16
4 days          14
5 days          16
6 days           2
7 days           6
8 days           2
9 days           2
10 days          1
11
AlliDeacon

オプション1

df['DAYSLATE_pct'] = df.DAYSLATE / df.DAYSLATE.sum()

オプション2
使用する pd.value_countsの代わりにgroupby

pre_df.DAYSLATE.value_counts(normalize=True)
17
piRSquared