[英]Add column of average in data frame using Python
我想創建一個新的數據框,其中包含性別、孩子數量、保險價格以及個人是否吸煙。 下面是我的數據框的示例。
Sex Children Insurance Smoker
Male 3 392.48 Yes
Male 6 782.68 Yes
Male 6 438.21 No
Female 1 125.98 Yes
Female 1 58.32 No
Female 4 585.12 Yes
Female 4 356.12 No
到目前為止,我使用代碼得到了這個
df = pd.DataFrame(insurance).groupby(["sex", "children", "smoker"]).size()
#which outputs
sex children smoker
female 1 yes 1
1 no 1
4 yes 1
4 no 1
male 3 yes 2
6 yes 1
6 no 1
我如何根據他們有多少孩子以及他們是否吸煙來為每個性別添加一列平均保險? 我嘗試添加 mean("insurance") 但得到了一個錯誤,當然。 非常感謝你的幫助!
df.groupby(["Sex", "Children", "Smoker"],as_index=False)["Insurance"].mean()
#output
Sex Children Smoker Insurance
0 Female 1 No 58.32
1 Female 1 Yes 125.98
2 Female 4 No 356.12
3 Female 4 Yes 585.12
4 Male 3 Yes 392.48
5 Male 6 No 438.21
6 Male 6 Yes 782.68
那是你要的嗎?
Sex Children Smoker size mean
0 Female 1 No 1 58.32
1 Female 1 Yes 1 125.98
2 Female 4 No 1 356.12
3 Female 4 Yes 1 585.12
4 Male 3 Yes 1 392.48
5 Male 6 No 1 438.21
6 Male 6 Yes 1 782.68
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.