데이터 세트를 테스트 및 교육 데이터 세트로 분리했습니다. 훈련 세트에 회귀 분석을 적용하려고 시도한 다음 테스트 세트에서 예측을 사용합니다. 이 작업을 수행하면 "model.frame 요소 x에 오류가 있습니다. 새 수준이 있습니다"라는 오류 메시지가 나타납니다. 내 훈련 데이터에는 나타나지 않는 테스트 데이터에 레벨이 있기 때문입니다.테스트 데이터 세트의 새로운 요소 레벨을 'NA'로 바꿀 때 오류가 발생했습니다.
내가 원하는 것은 두 데이터 세트에없는 레벨을 제거하거나 무시하는 것입니다. 나는이 일을 시도했다, 그러나 그것은 NA
어떤 수준 설정되지 않으며, id
객체는 "정수 (빈)"라고 :
id <- which(!(test$x %in% levels (train$x))
train$x[id] <- NA
fit <- lm(y ~ x, data=train)
P <- predict(fit,test)
그러나 droplevels 명령을 추가하기 전에는 첫 번째 부분이 제대로 작동하지 않습니다. 그것은 빈 정수, 또는 교체에 190708 행이 있다고 말하는 오류가 발생하는 것 같습니다. 데이터는 189590입니다. – grig109