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

如何在Polars中基于列条件筛选计算累积和并生成EWM_COLUMN

问题:基于Polars DataFrame计算集群内球队的EWM均值

我有一个Polars DataFrame,想要获取集群内球队的最新进球数来应用ewm_mean(),最终生成示例中的EWM_COLUMN列。

示例数据代码

import polars as pl

pl.Config(tbl_cols=9)

df = pl.read_csv(b"""
Season,Wk,Home,Away,HomeGoals,AwayGoals,Cluster_home,Cluster_away,Cluster_pair_key
2024,27.0,teamA,teamF,3,2,4,1,1_4
2024,27.0,teamB,teamG,1,3,2,2,2_2
2024,27.0,teamC,teamH,1,0,5,3,3_5
2024,27.0,teamD,teamI,0,1,3,1,1_3
2024,27.0,teamE,teamJ,3,0,3,4,3_4
""")

原始表格

┌────────┬──────┬───────┬───────┬───────────┬───────────┬──────────────┬──────────────┬──────────────────┐
│ Season ┆ Wk   ┆ Home  ┆ Away  ┆ HomeGoals ┆ AwayGoals ┆ Cluster_home ┆ Cluster_away ┆ Cluster_pair_key │
│ ---    ┆ ---  ┆ ---   ┆ ---   ┆ ---       ┆ ---       ┆ ---          ┆ ---          ┆ ---              │
│ i64    ┆ f64  ┆ str   ┆ str   ┆ i64       ┆ i64       ┆ i64          ┆ i64          ┆ str              │
╞════════╪══════╪═══════╪═══════╪═══════════╪═══════════╪══════════════╪══════════════╪══════════════════╡
│ 2024   ┆ 27.0 ┆ teamA ┆ teamF ┆ 3         ┆ 2         ┆ 4            ┆ 1            ┆ 1_4              │
│ 2024   ┆ 27.0 ┆ teamB ┆ teamG ┆ 1         ┆ 3         ┆ 2            ┆ 2            ┆ 2_2              │
│ 2024   ┆ 27.0 ┆ teamC ┆ teamH ┆ 1         ┆ 0         ┆ 5            ┆ 3            ┆ 3_5              │
│ 2024   ┆ 27.0 ┆ teamD ┆ teamI ┆ 0         ┆ 1         ┆ 3            ┆ 1            ┆ 1_3              │
│ 2024   ┆ 27.0 ┆ teamE ┆ teamJ ┆ 3         ┆ 0         ┆ 3            ┆ 4            ┆ 3_4              │
└────────┴──────┴───────┴───────┴───────────┴───────────┴──────────────┴──────────────┴──────────────────┘

需求说明

以teamE为例,计算其EWM_COLUMN时需要纳入以下进球数:

  • teamE的HomeGoals
  • teamD的HomeGoals
  • teamC的AwayGoals

我已经创建了Cluster_pair_key_Organized列来辅助实现需求,最终希望生成如下表格中的EWM_COLUMN:

目标表格

SeasonWkHomeAwayHomeGoalsAwayGoalsCluster_homeCluster_awayCluster_pair_keyEWM_COLUMN
202427.0teamAteamF32411_43 * 0.8 + ...
202427.0teamBteamG13222_21 * 0.8 + ...
202427.0teamCteamH10533_50 * 0.8 + ...
202427.0teamDteamI01311_30 * 0.8 + 0.2 * 0 + ...
202427.0teamEteamJ30343_43 * 0.8 + 0.2 * (0 * 0.8 + 0.2 * 0)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 11:45:12