簡體   English   中英

使用 Python 在數據框中添加平均值列

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM