R语言中时间序列特征工程Expanding Window扩展窗口最大值的实现方法
R语言对应Pandas
expanding().max()的实现方案 Pandas中df['births'].expanding().max()的作用是计算从数据集起始行到当前行的累计最大值,R中可以直接用内置的cummax()函数实现完全等价的效果。
具体实现方式
- 基础R实现(无需加载第三方包)
直接对目标列调用cummax()后赋值为新列即可:df$Expand_Max <- cummax(df$births) - tidyverse/dplyr实现(适配管道操作的特征工程 workflow)
结合mutate()使用,更适合批量处理特征的场景:# 先加载dplyr包 library(dplyr) df <- df %>% mutate(Expand_Max = cummax(births))
效果验证
样本births列取值:
c(4, 6, 3, 8, 5)
计算得到的Expand_Max列结果:c(4, 6, 6, 8, 8),和Pandas运行结果完全一致。
内容的提问来源于stack exchange,提问作者najeel
相关产品推荐
相关产品推荐

