首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用r中的名称列表重命名多个文件的特定列?

如何使用r中的名称列表重命名多个文件的特定列?
EN

Stack Overflow用户
提问于 2018-08-21 04:44:11
回答 1查看 667关注 0票数 0

我有一个包含.txt文件的文件夹。我已经通过以下命令将文件读取到R中的列表中:

代码语言:javascript
复制
filenames <- list.files("/path/to/folder")
datalist = lapply(filenames, function(x)read.table(x, header=T))

现在,我想将每个文件的第9列更改为文件名(文件名列表是名称的向量)。

您知道如何使用lapply()来完成此操作吗?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-08-21 04:57:46

您可以通过设置colnames子集并插入来按位置更改单个列名,如下例所示。

代码语言:javascript
复制
lst <- list(data.frame('a' = c(1,2,3),
                       'b' = c(3,5,6)),
            data.frame('a' = c(1,2,3),
                       'b' = c(3,5,6)),
            data.frame('a' = c(1,2,3),
                       'b' = c(3,5,6)))

lapply(lst, function(item) {
    colnames(item)[2] <- 'cat'   # This would be 9 if you wanted the 9th column
    return(item)
})

[[1]]
  a cat
1 1   3
2 2   5
3 3   6

[[2]]
  a cat
1 1   3
2 2   5
3 3   6

[[3]]
  a cat
1 1   3
2 2   5
3 3   6
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51938242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档