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

如何在R语言中按规则生成指定格式的年份字符向量?

R语言生成指定年份范围字符向量的实现方法

代码实现

直接运行以下代码即可得到符合要求的结果:

start_year <- 2007
end_year <- 2021

# 按规则定义增量值
increments <- c(1, 3, 5, 7, 9, 11, 13)
# 计算初始目标年份
target_years <- start_year + increments
# 处理超出结束年份或最后一步差值为1的情况
target_years <- ifelse(target_years > end_year | end_year - target_years == 1, end_year, target_years)
# 拼接成要求的字符串格式
year_vec <- paste0(start_year, "-", target_years)

# 查看最终结果
year_vec

运行后输出:

[1] "2007-2008" "2007-2010" "2007-2012" "2007-2014" "2007-2016" "2007-2018" "2007-2021"

关键步骤拆解

  • 定义基础参数:设定start_year和end_year,后续要调整年份直接修改这两个变量即可;
  • 生成增量序列:按照需求创建包含1、3、5…13的增量向量,对应每个目标年份相对起始年份的偏移量;
  • 修正目标年份:用ifelse处理两种特殊场景:计算出的年份超过结束年份,或者与结束年份仅差1,这两种情况统一替换为结束年份;
  • 拼接格式字符串:通过paste0将起始年份和每个修正后的目标年份拼接成"YYYY-YYYY"格式的字符串,得到最终的字符向量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 12:01:00