2014-11-18 7 views
0

R에서 몇 개의 파일 (예 : A, B, ...)을 읽으 려하고 각 파일에 대해 한 줄씩 반복하고 특정 행을 특정 cutoff를 만들고 data.frame에 저장 한 다음 나중에 플롯을 만듭니다. 대신 하나 하나를하고, 나는 중첩 루프와 목록을 사용하려고하지만,이 오류가 반환1 : x : 길이 0의 인수에 오류가 발생했습니다.

Error in 1:x : argument of length 0 

내 코드 : 당신의 mylist의 이름을 통해

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

이 사용 mylist''의 작은 샘플을 제공 할 수있다'dput' –

답변

2
for (j in names(mylist)){ 

이 반복을 객체이므로 j에는 "A", "B", "C"등의 문자열이 포함됩니다. 이것에 nrow를 부르는 것은 현명한 일이 아닙니다. 당신은 아마 내용 mylist 반복 할 :

for (j in mylist) { 
관련 문제