fofrage-regrformel2

bayes
regression
paper
Published

January 3, 2025

1 Aufgabe

Betrachten Sie folgende Forschungsformel:

Gibt es einen Interaktionseffekt zwischen Geschlecht und Schnabellänge auf das Gewicht eines Pinguins? Liegen auch Haupteffekte vor?

Aufgabe: Auf Basis der folgenden Analyse ist folgende Frage zu untersuchen. Liegt ein Interaktionseffekt vor?

Hinweise:

  • Unter “Haupteffekt” versteht man den Effekt einer UV auf die AV (im Gegensatz zu einem Interaktionseffekt, der ja der gemeinsame Effekt mehrerer UV auf die AV ist).
  • Beachten Sie die üblichen Hinweise des Datenwerks.
  • Beziehen Sie sich auf den Datensatz penguins.
library(palmerpenguins)
library(tidyverse)
data(penguins)

penguins <-
  penguins |> 
  filter(sex == "female" | sex == "male") |> 
  drop_na()
library(easystats)
library(tidyverse)
library(rstanarm)
glimpse(penguins)
Rows: 333
Columns: 8
$ species           <fct> Adelie, Adelie, Adelie, Adelie, Adelie, Adelie, Adel…
$ island            <fct> Torgersen, Torgersen, Torgersen, Torgersen, Torgerse…
$ bill_length_mm    <dbl> 39.1, 39.5, 40.3, 36.7, 39.3, 38.9, 39.2, 41.1, 38.6…
$ bill_depth_mm     <dbl> 18.7, 17.4, 18.0, 19.3, 20.6, 17.8, 19.6, 17.6, 21.2…
$ flipper_length_mm <int> 181, 186, 195, 193, 190, 181, 195, 182, 191, 198, 18…
$ body_mass_g       <int> 3750, 3800, 3250, 3450, 3650, 3625, 4675, 3200, 3800…
$ sex               <fct> male, female, female, female, male, female, male, fe…
$ year              <int> 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007…

Zur besseren Interpretierbarkeit sind die metrischen UV standardisiert:

penguins_z <- standardize(penguins, select = bill_length_mm, append = TRUE)

Es werden verschiedenen Modelle berechnet, die sich in ihrem Regressionsformel unterscheiden:

m1 <- stan_glm(body_mass_g ~ sex, data = penguins_z, 
               refresh = 0)
m2 <- stan_glm(body_mass_g ~ sex + bill_length_mm_z, data = penguins_z, 
               refresh = 0)
m3 <- stan_glm(body_mass_g ~ sex + bill_length_mm_z + sex:bill_length_mm_z, data = penguins_z, 
               refresh = 0)
m4 <- stan_glm(body_mass_g ~ sex:bill_length_mm_z, data = penguins_z, 
               refresh = 0)

Parameter m1:

Parameter Median 95% CI pd Rhat ESS (tail) Prior
(Intercept) 3862.46 (3750.92, 3974.67) 100% 0.999 2643 Normal (4207.06 +- 2013.04)
sexmale 682.15 (524.68, 840.05) 100% 1.000 2845 Normal (0.00 +- 4020.19)

Parameter m2:

Parameter Median 95% CI pd Rhat ESS (tail) Prior
(Intercept) 4002.31 (3900.80, 4100.92) 100% 1.000 2750 Normal (4207.06 +- 2013.04)
sexmale 407.10 (256.64, 551.40) 100% 0.999 3221 Normal (0.00 +- 4020.19)
bill_length_mm_z 403.47 (331.31, 476.41) 100% 0.999 3034 Normal (0.00 +- 2013.04)

Parameter m3:

Parameter Median 95% CI pd Rhat ESS (tail) Prior
(Intercept) 4012.10 (3909.62, 4116.34) 100% 1.000 2937 Normal (4207.06 +- 2013.04)
sexmale 404.20 (257.01, 555.16) 100% 1.000 2784 Normal (0.00 +- 4020.19)
bill_length_mm_z 433.59 (329.30, 536.58) 100% 0.999 2777 Normal (0.00 +- 2013.04)
sexmale:bill_length_mm_z -50.27 (-191.23, 89.75) 75.25% 0.999 2842 Normal (0.00 +- 2809.11)

Parameter m4:

Parameter Median 95% CI pd Rhat ESS (tail) Prior
(Intercept) 4218.60 (4143.53, 4289.78) 100% 1.000 2752 Normal (4207.06 +- 2013.04)
sexfemale:bill_length_mm_z 509.06 (395.31, 621.10) 100% 1.000 2436 Normal (0.00 +- 3079.61)
sexmale:bill_length_mm_z 444.70 (347.92, 545.03) 100% 1.000 2802 Normal (0.00 +- 2809.11)













2 Lösung

Die Regressionsformel lautet: body_mass_g ~ sex + bill_length_mm + sex:bill_length_mm.

Daher ist m3 korrekt.

Die Parameterwerte von m3 zeigen, dass ein Interaktionseffekt nicht bestätigt werden kann, bzw. dass die Null, also keine Interaktion, im Bereich plausibler Werte (d.h. innerhalb des Konfidenzintervalls) liegt.