2017-03-05 2 views
1

Wenn alle meine Klammern übereinstimmen, und (denke ich) verwende ich keine falsch platzierten Zeichen, wie erscheint der 'unerwartete' {'in' {'Fehler immer noch? HierR - Unerwartetes '{' auch mit übereinstimmenden Klammern?

ist der Code:

listsarw<-function(s){ 
    drunkwalk<-as.data.frame(matrix(ncol=s,nrow=4^s-1)) 
    is.self.avoiding<-vector(mode="logical",length=4^s-1) 
    for(i in 0:4^s-1){ 
     a<-convers(i,4) 
     drunkwalk[i,]<-a 
     if((!checkbacktrace(a))&&(!anyDuplicated(coords(a)))) 
     is.self.avoiding(i)<-TRUE 
    } 
    lim<-sum(is.self.avoiding) 
    sarw<-as.data.frame(matrix(ncol=s,nrow=lim)) 
    ctr<-0 
    for(i in 0:4^s-1){ 
    if(is.self.avoiding(i)){ 
     sarw[ctr,]<-drunkwalk[i,] 
     ctr++ 
    } #error is pointing to this bracket 
    } 
    return(sarw) 
} 

Antwort

2

R unterstützt nicht die ++ Betreiber. Daher ist das Schließen } unerwartet.

ctr = ctr + 1 

Wird den Trick tun.

2

R hat keine Inkrement- und Dekrementoperatoren. Anstelle von ctr++ sollten Sie ctr <- ctr + 1 verwenden.

Verwandte Themen