2013-02-13 34 views
1

我有几个txt文件,他们的名字是的1.txt,2.txt,3.txt和... 100.txt循环中的R语言与变量的地址

我想读的R输入语言这些文件循环中。我的代码是:

For(I in 1:100){ 

    Datai<-read.table(“H://”+’i’+”.txt”) 

} 

但是当我跑我得到这个错误:

non-numeric argument to binary operator

我怎样才能解决这个问题?

回答

2
For(I in 1:100){ 

Datai<-read.table(paste(paste("H://",i,".txt",sep=""))) 

} 

据我所知,在R.

Here没有字符串连接操作符是一个问题,如何构建一个。

+0

单个膏也能达到这个目的'膏( “H://”,I, “.TXT”,月= “” )' – 2013-02-13 10:13:05

+0

谢谢编辑了答案 – Trudbert 2013-02-13 10:18:07

1

在循环中,对象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 = "")))