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

如何在R语言中用循环批量创建并填充多列数据

自动化创建新列的解决方案

基础R循环实现

核心逻辑是提取所有需要的fractionPSII值,通过循环批量计算并创建对应列:

# 定义所有需要的fractionPSII取值(从0.25到0.75,步长0.05)
fractions <- seq(0.25, 0.75, by = 0.05)

# 循环遍历每个fraction值,创建并填充新列
for (frac in fractions) {
  # 生成列名:ETR + 数值*100(如0.25→ETR25)
  col_name <- paste0("ETR", as.integer(frac * 100))
  # 计算并赋值新列
  MGCons_FL2[[col_name]] <- MGCons_FL2$PhiPS2 * 0.55 * MGCons_FL2$Qin * frac
}

tidyverse(dplyr)简洁实现

如果你习惯用tidyverse工具链,可以用mutate结合批量操作:

library(dplyr)
library(purrr)

fractions <- seq(0.25, 0.75, by = 0.05)
# 生成所有目标列名
col_names <- paste0("ETR", as.integer(fractions * 100))

# 批量创建新列
MGCons_FL2 <- MGCons_FL2 %>%
  mutate(!!!set_names(map(fractions, ~ PhiPS2 * 0.55 * Qin * .x), col_names))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 10:48:16