2016-07-25 1 views
2

코드를 참조임의의 숲 모델 오류 (오류 (n 개의 == 0) ("데이터 (x)는 0 행이")를 중지하는 경우에) 나는 아주 잘 내 임의 숲 모델을 설정 한

modelRF <- randomForest(x=p$NDVI, 
        y=p$BushCategories, 
        ntree=500, do.trace=TRUE, 
        importance=TRUE, forest=TRUE, na.action=na.omit) 

하지만 그것은

Error in if (n == 0) stop("data (x) has 0 rows") : 
argument is of length zero 

아래의 오류가 문제가 될 수 무엇

'data.frame': 197 obs. of 5 variables: 
$ Waypoint_No : chr "OMATSC028" "OMATSC200" "OMATSC072N" "OMATSC317" ... 
$ Longitude  : num 17.7 17.6 17.8 17.9 17.9 ... 
$ Latitude  : num -21.2 -21.2 -21.1 -20.9 -21.1 ... 
$ NDVI   : num 0.256 0.327 0.25 0.268 0.283 ... 
$ BushCategories: Factor w/ 4 levels "0-25%","26-50%",..: 3 1 2 3 2 3 1 2 1 
1 ... 

아래 내 데이터의 구조를 볼 수 있습니다? 여기

내 데이터 세트가

x<-c('0.256', '0.327', '0.25', '0.268') 
y<-c('0-25%','26-50%','51-75%','76-100%') 
data<-data.frame(x,y)      
+0

'na.action = na.omit'? 어쩌면 모든 행에 NSA가 있습니까? http://stackoverflow.com/questions/8370455/how-to-build-random-forests-in-r-with-missing-na-values ​​ – zx8754

+0

NA가 없으므로 NA 기능을 제거했지만 여전히 사용 중입니다. 그 오류. – jmutua

+0

동일한 오류가 발생하도록 [reproducible data] (http://stackoverflow.com/questions/5963269)를 제공해주십시오. – zx8754

답변

0

귀하의 식 (랜덤 포레스트로 첫 번째 입력)과 같은 잘못된 방법의 샘플입니다. 알고리즘이 훈련 할 대상을 알 수 있도록 수식에 클래스 유형과 학습 데이터를 지정해야합니다.

귀하의 경우, 부시 카테고리에서 NDVI를 예측하려고한다고 가정합니다. 따라서 사용해야하는 수식은 NDVI ~ BushCategories입니다. 두 번째 요소는 교육 데이터입니다. 그래서, 그냥 고쳐야하고 그것은 당신을 위해 일해야합니다.