gpt4 book ai didi

Python:如何将 .mean 的特定列添加到数据框

转载 作者:太空狗 更新时间:2023-10-29 19:37:13 25 4
gpt4 key购买 nike

如何将 b 和 c 的方法添加到我的数据框中?我尝试了合并,但它似乎没有用。所以我想用 df.groupBy('date').mean()

的结果将两个额外的列 b_mean 和 c_mean 添加到我的数据框中

数据框

  a  b  c  date
0 2 3 5 1
1 5 9 1 1
2 3 7 1 1

我有以下代码

import pandas as pd

a = [{'date': 1,'a':2, 'b':3, 'c':5}, {'date':1, 'a':5, 'b':9, 'c':1}, {'date':1, 'a':3, 'b':7, 'c':1}]

df = pd.DataFrame(a)

x = df.groupby('date').mean()

编辑:

期望的输出如下df.groupby('date').mean() 返回:

             a         b         c
date
1 3.333333 6.333333 2.333333

我想要的结果是以下数据框

   a  b  c  date  a_mean   b_mean
0 2 3 5 1 3.3333 6.3333
1 5 9 1 1 3.3333 6.3333
2 3 7 1 1 3.3333 6.3333

最佳答案

如@ayhan 所述,您可以使用 pd.groupby.transform()为了这。转换类似于应用,但它使用与原始数据框相同的索引,而不是分组列中的唯一值。

df['a_mean'] = df.groupby('date')['a'].transform('mean')
df['b_mean'] = df.groupby('date')['b'].transform('mean')

>>> df
a b c date b_mean a_mean
0 2 3 5 1 6.333333 3.333333
1 5 9 1 1 6.333333 3.333333
2 3 7 1 1 6.333333 3.333333

关于Python:如何将 .mean 的特定列添加到数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43035093/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com