You need to enable JavaScript to run this app. 如何遍历DataFrame列提取指定行数据计算加权平均并生成新DataFrame
优惠活动
大模型
产品
解决方案
定价
更多

如何遍历DataFrame列提取指定行数据计算加权平均并生成新DataFrame

三角结构DataFrame批量计算Weighted Average实现

计算需求

遍历DataFrame全部DP列,提取列内Total、Latest Observation两类行的对应单元格值,基于规则完成逐列运算,最终将结果存入新的DataFrame行。

计算规则

逐组遍历相邻DP列对:

  • 第一步:计算前序DP列的Total行值 ÷ 前序DP列的Latest Observation行值,得到中间结果
  • 第二步:将中间结果除以后续相邻DP列的Total行值,得到该列对的最终计算值
  • 输出的Weighted Average行目标样式:
Weighted Average     3.491   1.747   1.457   1.174   1.104   1.086   1.054   1.077   1.018 

参考三角表结构

当前使用的三角表核心构成:

  • 行维度:事故期OP1~OP10、汇总行Total、最新观测行Latest Observation
  • 列维度:发展期DP1~DP10、汇总Total列
  • 三角空缺位置填充为NaN,表内容如下:
DP1         DP2         DP3         DP4         DP5         DP6         DP7         DP8        DP9       DP10       Total
OP1                  357848.0   1124788.0   1735330.0   2218270.0   2745596.0   3319994.0   3466336.0   3606286.0  3833515.0  3901463.0   3901463.0
OP2                  352118.0   1236139.0   2170033.0   3353322.0   3799067.0   4120063.0   4647867.0   4914039.0  5339085.0        NaN   5339085.0
OP3                  290507.0   1292306.0   2218525.0   3235179.0   3985995.0   4132918.0   4628910.0   4909315.0        NaN        NaN   4909315.0
OP4                  310608.0   1418858.0   2195047.0   3757447.0   4029929.0   4381982.0   4588268.0         NaN        NaN        NaN   4588268.0
OP5                  443160.0   1136350.0   2128333.0   2897821.0   3402672.0   3873311.0         NaN         NaN        NaN        NaN   3873311.0
OP6                  396132.0   1333217.0   2180715.0   2985752.0   3691712.0         NaN         NaN         NaN        NaN        NaN   3691712.0
OP7                  440832.0   1288463.0   2419861.0   3483130.0         NaN         NaN         NaN         NaN        NaN        NaN   3483130.0
OP8                  359480.0   1421128.0   2864498.0         NaN         NaN         NaN         NaN         NaN        NaN        NaN   2864498.0
OP9                  376686.0   1363294.0         NaN         NaN         NaN         NaN         NaN         NaN        NaN        NaN   1363294.0
OP10                 344014.0         NaN         NaN         NaN         NaN         NaN         NaN         NaN        NaN        NaN    344014.0
Total               3671385.0  11614543.0  17912342.0  21930921.0  21654971.0  19828268.0  17331381.0  13429640.0  9172600.0  3901463.0  34358090.0
Latest Observation   344014.0   1363294.0   2864498.0   3483130.0   3691712.0   3873311.0  4588268.0  4909315.0  5339085.0  3901463.0         NaN 

已编写的单点计算代码

目前已实现DP1、DP2列的单点位指标计算,代码内容为:

LDFTriangledf['Weighted Average'] =CumulativePaidTriangledf.loc['Total','DP2']/(CumulativePaidTriangledf.loc['Total','DP1'] - CumulativePaidTriangledf.loc['Latest Observation','DP1'])

内容的提问来源于stack exchange,提问作者Devil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.27 14:24:04