针对较大数据集使用AVERAGEIF生成Python列

针对较大数据集使用AVERAGEIF生成Python列,python,pandas,group-by,average,Python,Pandas,Group By,Average,在我的最后一个问题中,我已经对groupby进行了一部分介绍,但groupby似乎无法完成我所寻找的目标。我有具有唯一字母和时间组合的数据表,我试图将这些值的“averageif”放入第二个表中,但不是所有的值 Letter Time Value Time A2 B3 A1 1:00 7.97 1:00 3.16 4.32 A1 2:00 3.56 2:00

在我的最后一个问题中,我已经对groupby进行了一部分介绍,但groupby似乎无法完成我所寻找的目标。我有具有唯一字母和时间组合的数据表,我试图将这些值的“averageif”放入第二个表中,但不是所有的值

Letter  Time   Value          Time      A2       B3
A1      1:00    7.97          1:00     3.16     4.32  
A1      2:00    3.56          2:00     5.06     6.76
A2      1:00    3.16          
A2      2:00    9.09           
A2      2:00    0.64           
A2      2:00    5.44           
A3      1:00    1.53
B1      2:00    4.55
B1      3:00    7.36
B2      1:00    3.81
B2      2:00    7.30
B3      1:00    4.34
B3      1:00    4.30
B3      2:00    4.61
B3      2:00    8.91

我不知道如何写一些只能够智能地计算平均值的东西,我在寻找基于两列分析的东西。我有所有的代码从CSV中提取这些数据,生成唯一的值,等等,但它似乎并不相关。感谢您的建议,我无法通过此步骤。

使用
isin
选择所需的行,然后只需调用
groupby
+
mean
。进行最后一次取消堆栈调用以重塑输出

df[df.Letter.isin(['A2', 'B3'])]\
     .groupby(['Letter', 'Time']).Value.mean().unstack().T

Letter        A2    B3
Time                  
1:00    3.160000  4.32
2:00    5.056667  6.76

如果你的问题解决了,请接受答案。单击我的答案旁边的灰色复选标记将其切换为绿色。谢谢。冷速,你绝对是冰冻三尺,速度极快!!!这为我节省了很多时间,加上我学到了一些东西,非常感谢你的帮助-