2017-12-17 2 views
0

차원 축소를위한 역 선택과 선형 회귀를 비교하려고합니다. 데이터 세트는 150 개의 변수로 상당히 큽니다. R : cv.glm 변수 길이가 다름 오류

나는 항상 선택 모델의 교차 검증과 비교를 생성하기 위해 같은 방법을 사용했지만,이 데이터 집합이 시간은 cv.glm 내가 해결하기 위해 문제가 오류가 있습니다 : 모델

오류 .frame.default (수식 = SurveyTest $ H.test ~ : 변수 길이가 ( '음악')

가 SurveyTest에는 NA 값이 없습니다 찾을 달라, 나는 다른 원인을 감지 할 수없는 것 길이 차이

0 교차 검증을위한

코드 :

#Linear regression full model 
lm_full <- lm(SurveyTest$H.test~.,data=SurveyTest) 
summary(lm_full) 

#Backward selection 
lm_init <- lm(H.test~1,data=SurveyTest) 
backward_lm <- stepAIC(lm_full,scope = formula(lm_init),direction="backward", 
trace = FALSE) 
summary(backward_lm) 
AIC(backward_lm) 

#Cross Validation 
library(boot) 
model1 <- glm(lm_full) 
summary(lm_full) 
model2 <- glm(backward_lm) 
cv.glm(data=SurveyTest, glmfit=model1,K=10) 
cv.glm(data=SurveyTest, glmfit=model2,K=10) 

답변

1

은 내가 해결책을 찾은 것 같아요. 나는

lm_full <- lm(H.test~.,data=SurveyTest)

대신 문제를 해결

lm_full <- lm(SurveyTest$H.test~.,data=SurveyTest)

와 lm_full을 만들어야합니다.