부분 결정 계수의 R 구현


9

부분 결정 계수를 계산할 제안이나 패키지가 있습니까?

부분 결정 계수는 축소 모형에서는 설명 할 수 없지만 전체 모형에 지정된 예측 변수로 설명 할 수있는 변동 백분율로 정의 할 수 있습니다. 이 계수는 하나 이상의 추가 예측 변수가보다 완전하게 지정된 회귀 모형에 유용 할 수 있는지에 대한 통찰력을 제공하는 데 사용됩니다.

부분 r ^ 2에 대한 계산은 두 모델을 추정하고 이에 대한 분산 분석표를 생성 한 후 비교적 간단합니다. 부분 r ^ 2의 계산은 다음과 같습니다.

(SSEreduced-SSEfull) / SSEreduced

다중 선형 회귀 모델에 대해 이것을 계산하는 비교적 간단한 함수를 작성했습니다. 이 함수가 제대로 작동하지 않을 수있는 R의 다른 모델 구조에 익숙하지 않습니다.

partialR2 <- function(model.full, model.reduced){
    anova.full <- anova(model.full)
    anova.reduced <- anova(model.reduced)

    sse.full <- tail(anova.full$"Sum Sq", 1)
    sse.reduced <- tail(anova.reduced$"Sum Sq", 1)

    pR2 <- (sse.reduced - sse.full) / sse.reduced
    return(pR2)

    }

이 작업을 수행하기위한보다 강력한 기능 및 / 또는 위 코드의보다 효율적인 구현에 대한 제안이나 팁은 대단히 감사하겠습니다.


2
다른 모델을 시도하고 코드가 작동하는지 여부를 확인하는 것이 좋습니다. R은 일반적으로 좋으므로 anova는 다른 모델에 대해 비슷한 것을 반환해야합니다. 문제는 초기 공식에 있습니다. 다른 모델에도 적용됩니까? 그렇지 않으면 코드가 작동하는 데 아무런 의미가 없으며, 더 나아가 코드는 수식이 유지되지 않는 모델에 사용된다는 경고를 표시해야합니다.
mpiktas

나는 그 질문을 실제로 보지 못한다. 부분 R2를 계산하는 함수가 필요하지만 이미 R2가 있습니다. 패키지 감도를 알고 있습니까 (일부 R2는 없지만 특정 경우 인 pcc가 구현되어 있습니까)?
로빈 지라드

@robin-내 질문이 명확하지 않은 경우 사과드립니다. 이 계산이 포함 된 패키지 (유용한 다른 유용한 기능이 많이 포함되어 있음) 및 / 또는 위에서 작성한 기능을 개선하는 방법에 대한 제안을 찾는 데 관심이 있습니다. 분명히 오류 검사가 부족하고 모든 모델 유형에 적용 할 수있는 것은 아닙니다.
Chase

이 질문을 SE로 마이그레이션하는 것이 좋습니다. 문제의 핵심은 통계적인 문제가 아니라 구현 문제인 것 같습니다.
caracal

@ caracal-당신이 적합하다고 생각하는 것. R 관련 질문과 관련하여 SO와 CV 사이에 모래의 선을 어디에 그려야하는지에 대해 상당한 양의 논의가 있었다는 것을 알고 있습니다. 나는 어느 쪽이든 강력하게 선호하지 않습니다. 내 작업으로 마지막 문제에 대한이 특정 문제에서 벗어날 수 있었지만 앞으로 몇 주 안에 다시 다시 방문하여 더 나은 솔루션을 스스로 찾을 수 있습니다. 나는 또한 질문이 에테르로 사라지게하는 것이 좋다.
Chase

답변:


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.