[英]Using glm to predict continuous variables between 0 and 1 family=binomial(link='logit') gives error
[英]Change reference group using glm with binomial family
當我運行在R A二項回歸與independed因子變量包括三個層次的“高”,“中”,“低”,其中我想用改變參考類別relevel
我得到這個錯誤:
“Error in relevel.ordered(cbsnivcat3, "Lower") :
'relevel' only for factors”
我檢查了cbsnivcat3是否是一個因素
> is.factor(data$cbsnivcat3)
[1] TRUE
> levels(data$cbsnivcat3)
[1] "Higher" "Middle" "Lower"
> t1m4=glm(tertiary ~ relevel(cbsnivcat3, "Lower") , family = binomial, data = data)
Error in relevel.ordered(cbsnivcat3, "Lower") :
'relevel' only for factors
但與factor
glm(tertiary ~ factor(cbsnivcat3) , family = binomial, data = data)
起作用。
MQ1:是什么導致錯誤,我該怎么做?
在此先感謝您的提示,命令和解決方案
STR(數據)
$ cbsnivcat3 : Ord.factor w/ 3 levels "Higher"<"Middle"<..: 1 1 1 1 1 1 1 1 1 1 ...
$ tertiary : num 0 0 1 1 1 1 0 1 0 0 ...
cbsnivcat3
是一個有序的因素,因此重新relevel
將不起作用。 您可以將其更改為普通因素:
cbsnivcat3 <- factor(cbsnivcat3, levels=c("Lower","Middle","Higher"))
嘗試這個
df <- data.frame(y=sample(c(0,1), size=100,replace=T),x1=rep(c('a','b','c'),100), x2=1:100)
summary(glm(y~x1+x2,data=df))
df$x1 <- relevel(df$x1, ref='b')
summary(glm(y~x1+x2,data=df))
df$x1 <- relevel(df$x1, ref='c')
summary(glm(y~x1+x2,data=df))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.