我正在尝试在R中读取少量文件(如A,B,...),然后对于每个文件,逐行迭代,使用某个截止值过滤某些行,并将其保存在data.frame和后来做了一个情节。我尝试使用嵌套循环和列表,而不是一个接一个地做,但它返回了这个错误:
Error in 1:x : argument of length 0
A <- read.delim("A.txt",header=F)
B <- read.delim("B.txt",header=F)
C <- read.delim("C.txt",header=F)
D <- read.delim("D.txt",header=F)
mylist <- list (
"A"=A,
"B"=B,
"C"=C,
"D"=D
)
#also tried mylist <- c("A","B","C","D")
for (j in names(mylist)){
x <- nrow(j)
d <- data.frame()
for (i in 1:x){
if(j[i,1]<0){
d <- rbind(d, (j[i,]))
}
else {next}
}
#make plot
}
答案 0 :(得分:2)
for (j in names(mylist)){
这会迭代mylist
对象的名称,因此j
将包含字符串&#34; A&#34;,&#34; B&#34;,&#34; C& #34;等等。在此问候nrow
不会做任何明智的事情。您可能希望迭代mylist
的内容:
for (j in mylist) {