作者microcat (微喵)
看板R_Language
標題[問題] 迴歸參數的擷取
時間Tue Aug 6 12:16:11 2013
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
請把以下不需要的部份刪除
使用者
[問題敘述]:
請簡略描述你所要做的事情,或是這個程式的目的
執行迴歸分析,產生下列表單,想擷取第一欄位(Estimate)
因為有出現 NA 的情況,無法完整的將第一欄位擷取出來!
(有很多組需要執行,每組所估算出的 Beta 值長度不一)
希望能保留完整六個 Beta 值
(Intercept,data[,2],data[,3],data[,i],data[,j],data[,i]:data[,j])
想請教版上先進,可以如何達到這的目標,謝謝各位
Coefficients: (2 not defined because of singularities)
Estimate Std. Error z value Pr(>|z|)
(Intercept) -0.779222 1.309672 -0.595 0.552
data[, 2] 1.346329 0.204052 6.598 4.17e-11 ***
data[, 3] 0.035580 0.005365 6.631 3.32e-11 ***
data[, i] -0.771758 0.645828 -1.195 0.232
data[, j] NA NA NA NA
data[, i]:data[, j] NA NA NA NA
[程式範例]:
mylogit <- glm( data[,1] ~ data[,2] + data[,3] + data[,i] +
data[,j] + data[,i]:data[,j],
family=binomial(link="logit"), data = data)
coef <- summary(mylogit)$coefficients
coef[,1]
[關鍵字]:
感謝各位協助
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.129.5
※ 編輯: microcat 來自: 140.112.129.5 (08/06 14:04)
1F:推 Wush978:能不能提供範例data檔案呢?否則無法重現錯誤 08/06 23:14
2F:→ Wush978:可以參考dump指令 08/06 23:15
3F:→ diplazium:dump...又從版主大學到一招了,謝謝! 08/07 10:22
4F:推 lin15:mylogit$coef 好像可以XD? 08/07 20:38
5F:推 celestialgod:可是 那兩行NA出不來XDDD 08/07 22:24
6F:推 lin15:不加summary直接取coef的話就會有NA XD 08/08 01:33
7F:→ celestialgod:原PO意思好像是要完整的表? 08/08 01:47
8F:推 lin15:也可以拉 ifelse(is.na(a$coef),NA,summary(a$coef)) 08/08 02:18
9F:→ lin15:上面好像括號有放錯地方... 08/08 02:18
10F:→ lin15:反正就是透過mylogit$coef來判斷就可以了! 08/08 02:20
11F:→ microcat:謝謝各位的協助,mylogit$coef 可以達到所需要的目的 08/08 10:37
附上修改後的程式,謝謝各位的協助
Beta_temp <- matrix(0,1,8)
colnames(Beta_temp) <- c("i", "j","Intercept", "Gender", "Age", "CAR1",
"CAR2", "CAR1*CAR2")
for(i in 4:11){
for(j in (i+1):12){
mylogit <- glm( data[,1] ~ data[,2] + data[,3] + data[,i] + data[,j]
+ data[,i]:data[,j], family=binomial(link="logit"),
data = data)
coef <- t(as.matrix(mylogit$coef))
Beta_temp <- rbind(Beta_temp, c(i, j, coef[,1], coef[,2], coef[,3],
coef[,4], coef[,5], coef[,6]))
}
}
Beta_temp[-1,]
※ 編輯: microcat 來自: 140.112.129.5 (08/08 10:40)
12F:→ celestialgod:我按照原PO意思 把程式改好 修改於下面了 08/08 13:09
13F:→ microcat:非常感謝 08/09 14:07