You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Pandas的groupby()生成移动平均线,组内首个值设为NaN

分组后生成乳酸值回溯移动平均线的实现

基于按['Test ID', 'Appointment Date:']分组的患者模拟数据,生成乳酸值(对应字段LAC_missing)的回溯移动平均线,规则如下:

  • 每组第一个值为NaN
  • 每组第二个值等于该组首个观测到的乳酸值
  • 后续值依次按回溯累计的方式计算均值

代码实现

# 将乳酸值字段转为数值类型,无法转换的值设为NaN
df['LAC_missing'] = pd.to_numeric(df['LAC_missing'], errors='coerce')

# 按测试ID和预约日期分组
grouped = df.groupby(['Test ID', 'Appointment Date:'])

# 计算每组乳酸值的累计和
df['Cumulative Sum'] = grouped['LAC_missing'].cumsum()

# 标记每组内的行索引(从0开始)
df['Count'] = grouped.cumcount()

# 计算移动平均线:索引大于0时用累计和除以索引值,否则设为NaN
df['LAC Moving Average'] = df['Cumulative Sum'] / df['Count'].where(df['Count'] > 0)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 03:02:11