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

如何从多个CSV文件中导入指定列'test'(R语言)

解决方法:提取多个CSV文件中指定列'test'

只需要把原代码中按位置取第一列的[[1]]替换为按列名取指定列的[['test']]即可,修改后的完整代码如下:

filenames <- list.files(pattern = '.csv$', full.names = TRUE)

do.call(cbind, lapply(filenames, function(x) {
  # 读取CSV并提取名为'test'的列
  test_col <- read.csv(x)[['test']]
  # 用文件名作为列名
  setNames(data.frame(test_col), tools::file_path_sans_ext(basename(x)))
})) -> result

额外提示

如果部分CSV文件可能不存在'test'列,可以添加判断逻辑避免报错:

filenames <- list.files(pattern = '.csv$', full.names = TRUE)

do.call(cbind, lapply(filenames, function(x) {
  df <- read.csv(x)
  # 判断列是否存在,不存在则返回空数据框(可按需调整处理方式)
  if ('test' %in% colnames(df)) {
    test_col <- df[['test']]
    setNames(data.frame(test_col), tools::file_path_sans_ext(basename(x)))
  } else {
    setNames(data.frame(character(0)), tools::file_path_sans_ext(basename(x)))
  }
})) -> result

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 07:34:52