R中匹配对的比例几率序数Logistic回归(polr)

时间:2016-04-17 22:34:30

标签: logistic-regression ordinal

T_Data包含6个级别的结果。 '分配'取值为' 1'或者是' 0'。 T_Data包含221个具有'分配'价值' 1'和307分配'分配'值' 0'。我使用' polr'进行了比例赔率逻辑回归。使用下面的代码

### Ordinal Logistic Regression
schtyp.f <- factor(T_Data$outcome, labels = c("M0", "M1", "M2", "M3", "M4", "M5"))
m <- polr(schtyp.f ~ Assign, data = T_Data, Hess=TRUE)
summary(m)
## store table
(ctable <- coef(summary(m)))
## calculate and store p values
p <- pnorm(abs(ctable[, "t value"]), lower.tail = FALSE) * 2
## combined table
print(ctable <- cbind(ctable, "p value" = p))
## End of Ordinal Logistic Regression

我根据其他变量执行了1:1的匹配,匹配的对从1到221编号,并在列“匹配ID”中编号。 我如何进行匹配的序数逻辑回归?

1 个答案:

答案 0 :(得分:0)

我首先创建了一个数据结构m_polr。列变量包括&#39;分配&#39;&#39;结果&#39;以及&#39; Match_pair_id&#39;。 &#39;分配&#39;取值为1或0,&#39;结果&#39;取值0到6,&#39; Matched_pa​​ir_id&#39;取值1,2,... 221。请注意,有221对匹配。

cat("\n")
cat("********* Matched Proportional Ordinal Logistic regression ************\n")
cat("\n")
### Ordinal Logistic Regression
rm(ctable, schtyp.f, m, p)
schtyp.f <- factor(m_polr$Outcome, labels = c("M0", "M1", "M2", "M3", "M4", "M5", "M6"))
m <- polr(schtyp.f ~ Assign + Match_pair_id, data = m_polr, Hess=TRUE)
summary(m)
## store table
(ctable <- coef(summary(m)))
## calculate and store p values
p <- pnorm(abs(ctable[, "t value"]), lower.tail = FALSE) * 2
## combined table
print(ctable <- cbind(ctable, "p value" = p))