私は次のようなデータベースを持っています:
STAFF Position_Group FTE
BOB APP 1.0
Mike APP 0.5
Ken APP 0.8
Liz APP 0.7
Sally APP 0.6
合計= 3.6
FTE列を合計してから、各スタッフメンバーを合計で割ると、次のような新しいデータテーブルが作成されます。
STAFF Position_Group FTE %_Total_FTE
BOB APP 1.0 .27
Mike APP 0.5 .14
Ken APP 0.8 .22
Liz APP 0.7 .19
Sally APP 0.6 .16
これを行うことでFTE列を合計する方法は知っていますが、%列を計算するためにそれを適用する方法がわかりません。
Master_PG_ROC_CFTE = Master_PG_ROC_v1.groupby(['Position_Group']).agg({'FTE': ['sum']})
を使用groupby().transform()
して、合計を行全体に伝播できます。
df['%Total_FTE'] = df['FTE'] / df.groupby('Position_Group')['FTE'].transform('sum')
出力:
STAFF Position_Group FTE %Total_FTE
0 BOB APP 1.0 0.277778
1 Mike APP 0.5 0.138889
2 Ken APP 0.8 0.222222
3 Liz APP 0.7 0.194444
4 Sally APP 0.6 0.166667
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加