我有几个txt文件,它们的名字分别是1.txt、2.txt、3.txt和……100.txt
我想用 R 语言循环读取这些文件。我的代码是:
For(I in 1:100){
Datai<-read.table(“H://”+’i’+”.txt”)
}
但是当我运行我得到这个错误:
二元运算符的非数字参数
我怎么解决这个问题?
For(I in 1:100){
Datai<-read.table(paste(paste("H://",i,".txt",sep="")))
}
据我所知,R 中没有字符串连接运算符。
这是一个如何构建的问题。
在您的循环中Datai
,该对象在每次运行中都被新对象替换。您应该将返回的数据帧存储read.table
在列表中。
Data <- vector("list", length = 100) # initialize the list
For(I in 1:100){
Data[[I]] <- read.table(paste("H://", I, ".txt", sep = ""))
}
同样可以通过以下方式实现lapply
:
Data <- lapply(1:100, function(I) read.table(paste("H://", I, ".txt", sep = "")))