2010-07-26 149 views
7

我在R中運行邏輯迴歸模型。我使用了Zelig和Car包。但是,我想知道是否有一種簡單的方法來獲得模型的模型擬合統計量。 (僞R方,卡方,對數等)Logistic迴歸的模型擬合統計

+0

你可以在這裏找到幾個例子:http://www.ats.ucla.edu/stat/r/dae/mlogit.htm – nico 2010-11-21 11:51:57

+0

看起來你有一個你喜歡的答案(下),你會願意選擇它作爲您的首選答案? – 2011-01-03 01:33:17

+1

您可能會發現此問答網站更適合查看統計問題:http://stats.stackexchange.com/ – 2011-01-03 01:36:34

回答

1

通常這是使用summary()函數完成的。

+0

summary()爲我提供了係數和迴歸參數。這很重要,但不是我要找的。 此外,利用澤裏格柯輸出,I得到以下輸出: 空偏差:1068.24上772自由度 殘留偏差的:939.48上761自由度 的(941個觀測由於missingness刪除) AIC:963.48 – Tony 2010-07-26 17:04:06

+1

謝謝!!!我還發現,使用Design包中的lrm函數運行logistic迴歸可以將僞R^2作爲輸出。 – Tony 2010-07-26 19:02:29

1

如果不知道模型對象是什麼,很難回答這個問題。我不確定Zelig產生什麼。

我會看names(model)names(summary(model))names(anova(model,test = "Chisq")),看看你想要的數據是否在那裏。我知道對於對數似然來說,logLik(model)會給你你想要的。

1

儘管我不是專家,但物流回歸模型的模型擬合統計量在解釋方面並不像直線迴歸方法那樣簡單明瞭。假設你有一個二元響應,我發現有用的一種方法是按照預測的概率區間(0-10%,10%-20%,... 90%-100%)對數據進行分組,並比較實際概率到預測的。這非常有用,因爲您的模型通常會在低端預測過高或在高端預測不足。這也可能導致更好的模型。

4

假設glm1是您的型號,您的尺寸是n = 100

這裏有一些優度配合措施:

R2<-1-((glm1$deviance/-2)/(glm1$null.deviance/-2)) cat("mcFadden R2=",R2,"\n")

R2<-1-exp((glm1$deviance-glm1$null.deviance)/2*n) cat("Cox-Snell R2=",R2,"\n")

R2<-R2/(1-exp((-glm1$null.deviance)/n)) cat("Nagelkerke R2=",R2,"\n")

AIC<- glm1$deviance+2*2 cat("AIC=",AIC,"\n")

這樣,你有怎樣計算的概述四人幫的測量。

+0

在這個話題上只是一個簡短的補充:GoF測量取決於Loglikelihood-value,它們爲什麼被視爲不像「正常的」R-正方形。 0.2的McFadden值並不意味着20%的方差由模型解釋,因此它與OLS計算的R-Square不同。但是在大多數模型中,僞R平方> = 0.2的值非常好。 – Redfood 2013-04-11 13:44:16