如何基于熊猫中其他列的条件对列的某些值求平均值

玛丽

我有一个像这样的数据框:

Index    Date      Type  Value
0      01/01/2010    A    10
1      01/01/2010    B    15
2      01/01/2010    B    25
3      01/01/2010    A    12
4      01/02/2010    A    9
5      01/02/2010    B    17
6      01/02/2010    B    20
7      01/02/2010    A    8

我想创建一个新列,以便对每一行平均基于Type和Date的值,因此对于给定的日期,所有具有Type A的行将具有相同的平均值,而对于Type B将具有相同的平均值。 2010年1月1日,所有类型A的丝束将为(10 + 12)/ 2 = 11,所有类型B的行将为(15 + 25)/ 2 = 20:

Index    Date      Type  Value  Value2
0      01/01/2010    A    10    11
1      01/01/2010    B    15    20
2      01/01/2010    B    25    20
3      01/01/2010    A    12    11
4      01/02/2010    A    9    8.5
5      01/02/2010    B    17   13.5
6      01/02/2010    B    20   13.5
7      01/02/2010    A    8    8.5

您可能想要groupby并且transform(尽管我不确定您期望的输出中为什么键入Bfor01/02/201013.5,我认为应该是18.517和20的平均值):

df['Value2'] = df.groupby(['Type','Date']).Value.transform('mean')
>>> df
   Index        Date Type  Value  Value2
0      0  01/01/2010    A     10    11.0
1      1  01/01/2010    B     15    20.0
2      2  01/01/2010    B     25    20.0
3      3  01/01/2010    A     12    11.0
4      4  01/02/2010    A      9     8.5
5      5  01/02/2010    B     17    18.5
6      6  01/02/2010    B     20    18.5
7      7  01/02/2010    A      8     8.5

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用熊猫如何根据日期查找列中某些元素的平均值?

熊猫获得列平均值/均值与舍入值

如何在熊猫中获取使用另一列值选择的行的平均值

计算月份的平均值并替换其他列的值

蟒蛇。熊猫 CSV。用其他列值计算平均值

大熊猫中是否有任何包装可以基于其他列计算列值的所选部分的平均值

如何根据熊猫的多种条件从一组列中得出平均值?

基于该行中的平均值的全列条件格式?

基于多列分组的熊猫滚动平均值

当值在熊猫中的其他2列之间时,如何汇总行平均值

基于条件的熊猫窗平均值

Python Pandas-如何添加总行以求和某些列并取其他列的平均值

根据两个条件求平均值;根据这些平均值创建列

按年份分组和其他列,并根据特定条件的熊猫计算平均值

熊猫:如何创建基于其他列值的条件对其他列求和的列?

如何基于Julia中一列中的值查找数据框的行的平均值?

将列的平均值等于100,并按比例转换列中的其他值(Pandas Python)

列的平均值,条件是其他列的前x%

根据其他列中的值计算Google文档中的平均值

如何计算与其他列中的单元格相对应的列中某些单元格之间的平均值?

Python:如何在不同的熊猫数据框列之间求平均值?

大熊猫中的列以其他列的平均值为条件

如何根据 CSV 中的其他列值访问列值并找到它的平均值

根据数据框中其他列中的分组值计算列的平均值

如何分组,总结和计算列中每个其他元素的平均值?

根据熊猫数据框中的其他列获取变量的平均值

用其他列的平均值填补熊猫中的空白

用同一列的平均值(不是列的空值)替换一列中的 nan 值,而其他列具有某些值

根据组中其他值的平均值创建新列