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

R语言如何识别跨年场景为预测数据新增target_year目标年份列

R 数据表新增target_year字段实现方案

方法1:dplyr包实现(写法最简洁)

首先加载依赖包,可先构造和你场景匹配的示例数据,再执行字段新增逻辑:

# 加载dplyr依赖
library(dplyr)

# 构造示例测试数据(字段和你描述的完全匹配)
df <- tibble(
  target_week = c(50,51,52,53,1,2,3,4),
  forecast_month = rep(11, 8),
  forecast_year = rep(2017, 8),
  weekly_level = rnorm(8) # 模拟业务指标值
)

# 按规则新增target_year字段
df <- df %>%
  mutate(target_year = case_when(
    target_week %in% 1:4 ~ forecast_year + 1,
    target_week %in% 50:53 ~ forecast_year
  ))

如果要适配2015-2020年全量业务数据,可以直接用通用阈值判断,不需要限定周数区间:

df <- df %>%
  mutate(target_year = ifelse(target_week <= 4, forecast_year + 1, forecast_year))

方法2:base R实现(无需额外安装依赖包)

# 直接给数据集新增target_year字段
df$target_year <- ifelse(df$target_week %in% 1:4, df$forecast_year + 1, df$forecast_year)

输出效果验证

处理后的数据完全符合要求,示例效果如下:

target_weekforecast_monthforecast_yearweekly_leveltarget_year
50112017xxx2017
51112017xxx2017
52112017xxx2017
53112017xxx2017
1112017xxx2018
2112017xxx2018
3112017xxx2018
4112017xxx2018

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 02:15:04