![](/img/trans.png)
[英]Pandas: Calculate the average over all of the columns for n rolling rows at a time
[英]Pandas Calculate Average Bias By Rows from 2 Columns
我有一个如下所示的数据框,我试图通过比较两列数据——“obsvals”和“modelvals”列来计算一个简单的偏差。 我需要在每个月从 'modelvals' 中减去 'obsvals' 并将这些差异相加以计算第 1 个月和第 2 个月的累积偏差。 我不确定如何在 python 中做到这一点。 我猜是使用 groupby 'plant_name' 和 lambda 函数的组合..?
这是数据框:
plant_name year month obsvals modelvals Bias
0 ARIZONA I 2021 1 8.90 8.30 0.60
1 ARIZONA I 2021 2 7.98 7.41 0.57
3 CAETITE I 2021 1 9.10 7.78 1.32
4 CAETITE I 2021 2 6.05 6.02 0.03
我的最终答案应该是这样的:
plant_name year Bias
0 ARIZONA I 2021 0.58
1 CAETITE I 2021 0.67
感谢您的时间,
IIUC,你需要groupby
:
df = df.groupby(['plant_name','year']).agg({'Bias': np.mean}).reset_index()
plant_name year Bias
0 ARIZONAI 2021 0.585
1 CAETITEI 2021 0.675
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.