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

如何用Spotfire Over函数计算同类别下的上一日期?

在Spotfire中计算同类别下的上一个日期

根据你的需求,要为每行数据生成同类别下的上一个日期(组内第一行无前置日期则为空),可以通过以下两种Spotfire计算列方法实现:

方法1:取同类别排序后的紧邻上一行日期

适用于数据已按category和date排序的场景,直接获取组内排序后的前一行日期:

  1. 点击顶部菜单「数据」→「添加计算列」
  2. 列名设为expected_date,输入表达式:
Previous([date]) OVER (Partition By [category] Order By [date])
  • Partition By [category]:按类别分组计算
  • Order By [date]:组内按日期排序
  • Previous([date]):返回排序后当前行的上一行日期,组内第一行自动为空

方法2:取同类别中当前日期之前的最大日期

如果数据未严格排序,或需要找到当前日期之前的最近日期(而非仅紧邻行),用以下表达式:

Max([date]) OVER (Partition By [category] WHERE [date] < CurrentRow()[date])

该表达式会在同类别中筛选出所有小于当前行日期的记录,取其中的最大日期作为结果。若需取最早的前置日期,将Max替换为Min即可。

添加计算列后,即可得到你示例中预期的日期结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 21:20:33