-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbinary_outcomes.qmd
68 lines (57 loc) · 2.55 KB
/
binary_outcomes.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
---
title: "Regression with binary outcomes"
subtitle: "A notebook"
author:
name: 'Magnus Johansson'
affiliation: 'RISE Research Institutes of Sweden'
affiliation-url: 'https://ri.se/shic'
orcid: '0000-0003-1669-592X'
date: last-modified
date-format: iso
google-scholar: true
citation:
type: 'webpage'
format:
html:
code-fold: true
execute:
cache: true
warning: false
message: false
editor_options:
chunk_output_type: console
bibliography: binary_outcomes.bib
---
glmrob och poissonirr ser nästan identiska ut, men glmrob har något större SE/CI för interceptet, men mindre för övriga parametrar.
dock oklart varför glmrob inte funkar med tidy(exponentiate), men den verkar funka med modelsummary
punktestimaten är samma för rqlm som glmrob och poissonirr, medan SE/CI är smalare för rqlm. Det ser ut som att rqlm använder samma robusta SE som "firthb+robust SE"
glmrob och poissonirr() funkar med predictions, vilket rqlm inte gör.
Firth med improved robust SE har lite skillnader i både estimat och CI, med betydligt smalare CI.
```{r}
#| eval: false
modelsummary(list("poissonirr()" = m_poissonirr[["fit"]],
"glmrob()" = m_glmrob),
exponentiate = T)
```
```{r}
#| eval: false
library(robustbase)
m_glmrob <- glmrob(formula = sjuk_kort_dik ~ osa_15 * antal_anställda,
data = d_sick_osa,
family = poisson(link = "log"),
method = "Mqle")
library(mfx)
m_poissonirr <- poissonirr(formula = sjuk_kort_dik ~ osa_15 * antal_anställda,
data = d_sick_osa,
robust = T)
library(firthb) # https://github.com/nomahi/firthb
m_firthb <- firthb(formula = sjuk_kort_dik ~ osa_15 * antal_anställda,
data = d_sick_osa,
measure = "RR")
library(rqlm)
m_rqlm <- rqlm(formula = sjuk_kort_dik ~ osa_15 * antal_anställda,
data = d_sick_osa,
family = poisson,
eform = TRUE) # results are transformed to exponential scale.
```
Dock ger varken rqlm eller firthb model output som går att använda med predictions(). Om analysen bara kräver att rapportera koefficienter (Risk Ratio) verkar firthb vara lämpligaste alternativet. Men annars är det glmrob() från library(robustbase) eller poissonirr() från library(mfx) som är bästa alternativen. Kan ivf vara bra att jämföra resultat med firthb också, eftersom det verkar finnas tänkbara scenarion där det blir påtagliga skillnader.