2014-02-07 7 views
0

첫 번째 게시물, 그래서 쉽게 이동하십시오.glm 모델 데이터 집합 summarisation

GLMing의 보험 업계에서는 클래식 클레임의 빈도 및 평균 심각도를 모델링합니다. 이를 염두에두고 필자는 자신을 위해 실험 할 수있는 몇 가지 모델을 만들었으며 지금 질문이 있습니다.

GLM이 데이터 추정의 다양한 수준을 처리하는 방법, 특히 오류 예측과 관련하여 설명 할 수 있습니까?

아래 예를 고려하십시오. 데이터는 두 변수 강한 심각도 경향을 나타낸다 : - A는 B 보다 비싼 항을 갖는다 - 포드> 기아> VAUX> 취기 I가 unsummarised에 모델 데이터 세트의 요약 버전을 끼워

, 따라서이 장착 GLM 두 경우 모두 동일한 매개 변수

그러나 GLM은 unummarised 데이터에 잘 맞는 모델을 나타냅니다. 그러나 가중 평균, 즉 평균 심각도를 요약하고 사용할 때 모델은 적합하지 않습니다. 모든 unummarised 데이터가 더 많은 모델을 가지고 모델링 한 후에 이것은 예상했던대로 일 수 있습니다. 또한 가중치 평균은 상대적 강도를 나타내는 데 사용되므로 여기서는 가중치 평균을 지정하는 것이 모두 같은 가중치이기 때문에 무의미합니다.

그러나 기금으로 GLM을 사용하여 평균 심각도를 모델링 할 수 있습니까? 나는 의미없는 데이터 셋에 GLM을 적용한 결과가 평균 심각 할 것이라는 것을 안다. 그러나 나는 이미 요약 된 데이터에 모델을 맞추기를 희망했다. 집계 된 데이터 세트에 대한 모델링은 모델 적합성에 대한 진정한 표시를 제공하지 않습니다.

어리석은 질문 인 경우 사과드립니다. 저는 통계학자가 아니므로 헤 시안 매트릭스를 완전히 이해하지 못합니다.

참조하십시오 아래 코드 :

library(boot) 
library(reshape) 

dataset <- data.frame(
    Person = rep(c("A", "B"), each=200), 
    Car = rep(c("Ford", "Kia", "Vaux", "Jag"), 2, each=50), 
    Amount = c(rgamma(50, 200), rgamma(50, 180), rgamma(50, 160), rgamma(50, 140), 
     rgamma(50, 100), rgamma(50, 80), rgamma(50, 60), rgamma(50, 40)) 
) 

Agg1 <- ddply(dataset, .(Person, Car), summarise, mean=mean(Amount), length=length(Amount)) 

m1 <- glm(Amount ~ Person + Car, data = dataset, family = Gamma(link="log")) 
m2 <- glm(mean ~ Person + Car, data = Agg1, family = Gamma(link="log"), weights=length) 

summary(m1) 
summary(m2) 

감사합니다,

답변

0

결론은 두 모델이 동일하다는 것입니다 - 집계 된 모델은 "제대로 맞는"이유 때문에 전적으로이다 응집으로 인한 자유도의 감소.

모델이 동일한 이유를 알아보기 전에 반드시 두 모델이 모두 적합하다는 것을 의미하지는 않습니다. 특히 다음을 사용하여 진단을 실행해야합니다.

par(mfrow=c(2,2)) 
plot(m1) 

이렇게하면 진단을 실행해야합니다. 잔차가 정규 분포 (필수적 임)되지만 패턴 (-, +, -)을 따르는 것을 볼 수 있습니다. 나는 이것이 좋은 모델이라는 것을 선언하기 전에 그것을 이해하고 싶다. [틀림없이 이것은 데이터로 구성되어 있지만 원칙은 적용됩니다.]

집계 된 모델과 기본 모델을 비교하여 계수의 값을 살펴보십시오.

coef.m1 <- summary(m1)$coefficients 
coef.m2 <- summary(m2)$coefficients 
cbind(coef.m1[,1],coef.m2[,1]) 
#     [,1]  [,2] 
# (Intercept) 5.4096980 5.4096976 
# PersonB  -0.9249371 -0.9249366 
# CarJag  -0.6144606 -0.6144602 
# CarKia  -0.1786556 -0.1786555 
# CarVaux  -0.3597925 -0.3597923 

이유

당신은 집계 된 모델 때문에 P-값이다 "나쁜"라고 생각하지만, 이들은 t = coeff/se에 따라 달라집니다. m1 대 se의 비율 m2 모든 계수들에 대해 동일하다 :

coef.m2[,2]/coef.m1[,2] 
# (Intercept)  PersonB  CarJag  CarKia  CarVaux 
# 7.836171 7.836171 7.836171 7.836171 7.836171 

SE ~ SD/√

DF

때문에 두 모델 SE의 비율이 약

이어야

sem1/,155,776,243,943,210m2 √ = ((N M1 -1)/(N m2 -1))의 비율이 7.55 정확하게 동일하지 않은 이유

sqrt((nrow(dataset)-1)/(nrow(Agg1)-1)) 
# [1] 7.549834 

솔직히 I 의아해 해요.

다른 말로하면 glm(...)은 데이터를 집계했다는 것을 알 수있는 방법이 없습니다. 그것은 당신이 8 개의 데이터 포인트에 대해 4 개의 매개 변수와 절편을 가진 모델을 맞추려고한다고 생각합니다.

+0

답장을 보내 주셔서 감사합니다. jlhoward는 매우 유용했습니다. – user3283627