Как рассчитать отношение шансов и 95% доверительный интервал для децилей - PullRequest
1 голос
/ 10 ноября 2019

Я выполнил логистическую регрессию, часть результата, как показано ниже.

 Coefficients:
                                Estimate Std. Error z value Pr(>|z|)                         
  (Intercept)                    -1.9056     0.4967  -3.837 0.000125 ***
  GWAS$value                     0.4474     0.1157   3.868 0.000110 ***

Это данные, которые я использовал для логистической регрессии.

  ID  Phenotype   value
1 128         0 1.510320
2 193         1 1.956477
3 067         0 2.038308
4 034         1 2.058739
5 159         0 2.066371
6 013         0 2.095866

Я хотел бы знать, как рассчитать коэффициент вероятности и 95% доверительный интервал для дециля значения? Моя цель - поставить график, ось Y - OR (95% CI), а ось X - дециль значения в моих данных. Может кто-нибудь сказать мне, как я могу рассчитать это в R? Это пример рисунка. введите описание изображения здесь

1 Ответ

0 голосов
/ 10 ноября 2019

У меня нет ваших данных, поэтому я не могу найти подходящую модель для вас. Хитрость заключается в том, чтобы сделать предиктор порядковым, и использовать его для регрессии вашей переменной ответа. После этого вы просто строите CI каждой группы и, если необходимо, соединяете линии. Ниже я использовал пример набора данных, и если вы используете те же шаги, вы должны получить график ниже:

library(tidyverse)
ldata <- read.csv("https://stats.idre.ucla.edu/stat/data/binary.csv")
# we break gre column into quintiles
ldata <- ldata %>% mutate(GRE = cut_number(gre,5))

#regression like you did, calculate lor for all quintiles
fit <- glm(admit ~ 0+GRE,data=ldata,family="binomial")

# results like you have
results = coefficients(summary(fit))
# rename second column, SE for plotting
colnames(results)[2] = "SE"
#use ggplot
data.frame(results) %>% 
mutate(X=1:n()) %>%
ggplot(aes(x=X,y=Estimate)) + geom_point()+
geom_line() + 
# 95% interval is 1.96*SE
geom_errorbar(aes(ymin=-1.96*SE+Estimate,ymax=1.96*SE+Estimate),width=0.2)+
scale_x_continuous(label=rownames(results))+
xlab("GRE quintiles") +ylab("Log Odds Ratio")

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...