簡體   English   中英

如何用r中的名稱列表重命名多個文件的特定列?

[英]How to rename a specific column of multiple files with a list of names In r?

我有一個.txt文件文件夾。 我已經通過以下命令將文件讀入R中的列表中:

filenames <- list.files("/path/to/folder")
datalist = lapply(filenames, function(x)read.table(x, header=T))

現在,我想將每個文件的第9列更改為文件名(文件名列表是名稱的向量)。

你有什么主意,如何使用lapply()做到這一點? 謝謝!

您可以通過以下方式按位置更改單個列名稱:設置子colnames並插入,如以下示例所示。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM