답변:
나는 이것이 오류가 lm
아니라 vif
(패키지의 car
) 오류라고 생각합니다 . 그렇다면 완벽한 다중 공선 성 을 경험했다고 생각합니다 . 예를 들어
x1 <- rnorm( 100 )
x2 <- 2 * x1
y <- rnorm( 100 )
vif( lm( y ~ x1 + x2 ) )
오류가 발생합니다.
이와 관련하여``별칭 ''은 다른 변수에 선형 적으로 의존하는 변수를 말합니다 (즉, 완전한 다중 공선 성을 유발합니다).
솔루션을 향한 첫 번째 단계는 범인이되는 변수를 식별하는 것입니다. 운영
alias( lm( y ~ x1 + x2 ) )
예를 볼 수 있습니다.
회귀 X'X
행렬에 특이점이있을 때 종종 발생합니다 (회귀 출력 요약에서 NA 값).
기수 R lm()
은 기본값이이므로 특이 값 / 완벽한 다중 공선 성을 허용합니다 singular.ok = TRUE
. 다른 패키지 / 기능은 더 보수적입니다.
예를 들어, 패키지 의 linearHypothesis()
기능에 car
대한 기본값은 singular.ok = FALSE
입니다. 회귀 분석에 완벽한 다중 공선 성이 linearHypothesis()
있는 경우 "모델에 별칭이 있습니다"라는 오류가 반환됩니다. 이 오류를 처리하려면을 설정하십시오 singular.ok = TRUE
. 그러나 이렇게하면 회귀 분석에서 완벽한 다중 공선 성을 숨길 수 있으므로주의하십시오.