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

Stata循环语法转R:用for循环实现年度配对变量乘积计算

实现代码

首先将你的tibble数据命名为df,运行以下代码即可实现需求:

# 声明需要遍历的年份
years <- c(1874, 1875, 1876)

# for循环计算每一年的新变量
for (year in years) {
  # 拼接得到对应年份的var、num列名,以及新生成的newvar列名
  var_name <- paste0("var", year)
  num_name <- paste0("num", year)
  new_name <- paste0("newvar", year)
  # 对应列相乘赋值给新列
  df[[new_name]] <- df[[var_name]] * df[[num_name]]
}
代码说明
  • 用paste0()拼接字符串生成动态列名,逻辑和Stata中拼接var'v'的宏语法一致
  • R中通过[[列名]]的语法可以动态读取或赋值数据框/ tibble的列,适合循环场景下的变量操作

内容的提问来源于stack exchange,提问作者B.Nin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 18:36:08