将文件名写为列标题

  • 本文关键字:标题 文件名 r
  • 更新时间 :
  • 英文 :


我有一个循环,它查看一组文件,获取第 4 列并将它们组合在一起。我想将"输出"文件夹后面的文件名附加为列的标题。

files2 <- list.files(path="c:/Users/~/Output",pattern="*.csv", full.names=TRUE, recursive=FALSE)
newdata <- (1:51)
for(ii in files2){
titlename2<- tools::file_path_sans_ext(basename(files2)) 
#genes <- read.csv(files2[1], header=True)[,1]     # gene names
mydata2 <-read.csv(ii, header = T, stringsAsFactors=FALSE)
mydata2<- mydata2[,4]

newdata <- cbind(newdata,mydata2)
colnames(newdata)= c(files2)
}

但是,当我尝试应用文件名时,出现以下错误:

Error in dimnames(x) <- dn : 
``length of 'dimnames' [2] not equal to array extent

如何将文件名应用为列标题?

提前谢谢。

问题来自colnames(newdata)c(files2)长度不同的事实。

例如,您可以将colnames(newdata) = c(files2)移动到 for 循环之后,并将c(files2)替换为类似c("ID", files2)的内容(因为您有length(files2) + 1列(。

最新更新