redlou
比如有100个txt文件,每个都是一个数据集,
怎样把他们一起读进来啊??
谢谢
redlou
已经解决
bjt
[quote]引用第1楼redlou于2008-07-11 16:51发表的“”:
已经解决[/quote]
下午我正说呢,向redlou这样的老站友,解决这个问题应该不成问题啊
ekeen
files <- list.files(pattern=".txt$");
for(i in files) { x <- read.table(i, header=TRUE, row.names=1, comment.char = "A", sep="\t"); assign(print(i, quote=FALSE), x); write.table(x, paste(i, c(".out"), sep=""), quote=FALSE, sep="\t", col.names = NA) }
psychology
哪位可以解释一下呢?
9lotus
[quote]引用第3楼ekeen于2008-07-17 16:19发表的“”:
files <- list.files(pattern=".txt$");
for(i in files) { x <- read.table(i, header=TRUE, row.names=1, comment.char = "A", sep="t"); assign(print(i, quote=FALSE), x); write.table(x, paste(i, c(".out"), sep=""), quote=FALSE, sep="t", col.names = NA) }[/quote]
楼上诸君\高手
如果若干个TXT文件有相同字段(有字段名)
如何将他们一起一个个读进形成同一个R的DATA.FRAME,后一个TXT文件的内容跟在前一个后面.
abel
rslt.df <- data.frame()
for(file in file.list){
tmp <- read.table(file, header=T, ....) # ...: other args
rslt.df <- rbind(rslt.df, tmp)
}
psychology
怎么都这么复杂呢?
pedant
太复杂
psychology
psychology
网上搜到的DOS命令
http://www.alook.cn/read.php/166.htm
可以利用DOS的管道功能来完成,不管总共有多少个TXT,方法如下:
1。将所有的TXT拷贝到一个目录下
2。进入cmd模式,在该目录下键入以下命令:
for %f in (*.txt) do type %f>>c:\temp.txt
3。最后c:\temp.txt就是所需要的TXT文件了。
9lotus
感谢psychology,pedant,ekeen,尤其是abel
利用abel的方法我作了尝试,结果如下:
工作路径下有两个TXT文件:cs1.txt,cs2.txt,分别有字段code,x和y,执行如下命令:
txtfiles<-list.files()
rtn<-data.frame()
for(file in txtfiles){
tmp<-read.table(file,header=T,colClasses=c("character","numeric","numeric"))
rtn<-rbind(rtn,tmp)
}
出现提示:
Warning message:
In read.table(file, colClasses = c("character", "numeric", "numeric"), :
readTableHeader在读取'cs2.txt'时遇到了不完全的最后一行
请问这是为什么?
但打开rtn后却发现已经读入成功了.
cloud_wei
最后一行敲个ENTER就没有warning()了