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

使用R语言进行数据预处理:忽略最后一列转换为指定输出格式

R语言数据预处理实现方案

核心处理逻辑

  • 按行读取输入文本,避免因字段数不一致导致的读取错误
  • 对每行内容拆分后判断字段数量,分别解析分组编号和待聚合的数值:
    • 3字段行:第1位为分组编号,第2位为目标数值,忽略第3位
    • 2字段行:第1个字段的首字符为分组编号,剩余部分为目标数值,忽略第2个字段
  • 按分组编号聚合所有目标数值,用逗号拼接后按分组顺序输出

完整可运行代码

# 读取输入文本,如果是读取本地文件,将textConnection(...)部分替换为文件路径即可,示例:readLines("input.txt")
input_lines <- readLines(textConnection("1 161 2
1 1897 2
17689 2
1547 1
1 32 1
2 453 1
2 73 1
3 86 1
3 9768 1"))

# 初始化分组存储列表
result_list <- list()

for (line in input_lines) {
  parts <- strsplit(line, "\\s+")[[1]]
  if (length(parts) == 3) {
    group <- parts[1]
    value <- parts[2]
  } else if (length(parts) == 2) {
    group <- substr(parts[1], 1, 1)
    value <- substr(parts[1], 2, nchar(parts[1]))
  }
  # 追加数值到对应分组
  result_list[[group]] <- c(result_list[[group]], value)
}

# 按分组顺序输出拼接结果
for (group in sort(names(result_list))) {
  cat(paste(result_list[[group]], collapse = ","), "\n")
}

运行输出结果

161,1897,7689,547,32 
453,73 
86,9768 

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 17:54:03