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

如何在R中复制数据框行并按间隔扩展min_value变量

方法2:Base R 实现

如果不需要依赖第三方包,可使用基础循环完成:

# 原数据框
df <- data.frame(
  name = c("bank1", "bank1", "bank2", "bank2"),
  min_value = c(0, 25, 0, 15),
  max_value = c(25, 50, 15, 25),
  fee = c(0.10, 0.20, 0.05, 0.10)
)

# 初始化空数据框
expanded_df_base <- data.frame()

# 逐行处理并扩展
for (i in seq(nrow(df))) {
  current_row <- df[i, ]
  # 生成0.1间隔的序列
  min_sequence <- seq(current_row$min_value, current_row$max_value - 0.1, by = 0.1)
  # 构造当前行的扩展数据
  temp_df <- data.frame(
    name = rep(current_row$name, length(min_sequence)),
    min_value = min_sequence,
    max_value = rep(current_row$max_value, length(min_sequence)),
    fee = rep(current_row$fee, length(min_sequence))
  )
  # 合并到总数据框
  expanded_df_base <- rbind(expanded_df_base, temp_df)
}

说明:

  • 循环逐行生成序列并构造临时数据框,最后合并结果
  • 处理大数据量时效率低于tidyverse方法,因为rbind会频繁复制数据

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 09:22:47