Wird eine Abweichung von der Linearität diagnostiziert und für
relevant befungen, gibt es im Rahmen der Regressionsanalyse mehrere
spezifische Analyseoptionen. Neben der Multigruppenanalyse (die zugleich
Diagnose- wie auch Modellierungstool ist) gehören die intrinsische
Linearisierung durch Quadrierung oder Logarithmierung zu den
prominentesten Varianten.
Wir entscheiden uns in diesem Fall für eine Quadrierung, weil wir uns
aus theoretischen Überlegungen einen umgekehrt U-förmigen Zusammenhang
vorstellen können. Diese Entscheidung ist zudem durch die analytische
Inspektion per Multigruppenanalyse gut abgestützt.
5.1. Regression mit quadriertem Term
Wir erstellen in unserem Datensatz eine neue Variable mit dem
quadrierten Alter.
ess8_ch_ss_1$alter_sqr <- ess8_ch_ss_1$alter^2
Jetzt berechnen wir das neue Modell, indem wir im
lm()-Befehl die quadrierte Altersvariable ergänzen.
model_sqr <- lm(klima_ver~alter_sqr+alter, data = ess8_ch_ss_1)
summary(model_sqr)
##
## Call:
## lm(formula = klima_ver ~ alter_sqr + alter, data = ess8_ch_ss_1)
##
## Residuals:
## Min 1Q Median 3Q Max
## -7.2294 -1.1417 0.3478 1.5043 4.0435
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.7966541 0.3530216 13.587 < 2e-16 ***
## alter_sqr -0.0010240 0.0001584 -6.465 1.37e-10 ***
## alter 0.0998233 0.0156638 6.373 2.47e-10 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.206 on 1479 degrees of freedom
## (43 Beobachtungen als fehlend gelöscht)
## Multiple R-squared: 0.0275, Adjusted R-squared: 0.02619
## F-statistic: 20.91 on 2 and 1479 DF, p-value: 1.106e-09
Anstatt extra eine neue quadrierte Variable zu generieren, können wir
auch im lm-Befehl automatisch eine entsprechende Variable anlegen und
integrieren lassen.
model_sqr1 <- lm(klima_ver ~ alter + I(alter^2), data = ess8_ch_ss_1)
summary(model_sqr1)
##
## Call:
## lm(formula = klima_ver ~ alter + I(alter^2), data = ess8_ch_ss_1)
##
## Residuals:
## Min 1Q Median 3Q Max
## -7.2294 -1.1417 0.3478 1.5043 4.0435
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.7966541 0.3530216 13.587 < 2e-16 ***
## alter 0.0998233 0.0156638 6.373 2.47e-10 ***
## I(alter^2) -0.0010240 0.0001584 -6.465 1.37e-10 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.206 on 1479 degrees of freedom
## (43 Beobachtungen als fehlend gelöscht)
## Multiple R-squared: 0.0275, Adjusted R-squared: 0.02619
## F-statistic: 20.91 on 2 and 1479 DF, p-value: 1.106e-09
Ausserdem können wir die quadratische Regressionskurve auch grafisch
leicht darstellen. Hierfür fügen wir unserem ggplot()
folgendes hinzu:
geom_smoth(method = "lm", formula = y~poly(x,2))
ggplot(ess8_ch_ss_1, aes(alter, klima_ver))+
geom_jitter(alpha = 0.2, size =2)+
scale_x_continuous(breaks = seq(15,100,5))+
scale_y_continuous(breaks = seq(0,10,1))+
geom_smooth(method = "lm", se = F, color = "blue", formula = y ~ poly(x,2))+
theme_classic()+
labs(title = "Klimaverantwortung nach Alter (mit quadratischem Fit)",
y = "Klimaverantwortung",
x = "Alter",
subtitle = "Ich fühle mich gar nicht (0) - stark (10) verantwortlich dafür den Klimawandel zu reduzieren",
caption = "ESS(2016), Teilstichprobe CH, N=1155")

Auf Grundlage der Koeffizienten und der Grafik können wir Aussagen
über den Zusammenhang treffen:
- Der Befund eines nicht-linearen Zusammenhangs erhärtet sich: Der
Koeffizient des quadrierten Terms ist signifikant von 0 verschieden, das
R^2 der quadratischen Funktion substanziel gegenüber der linearen
erhöht: Das model_sqr erklärt 2.75% der gesamten
Varianz der Klimaverantwortung, während dies beim linearen
fit deutlich weniger als 1% sind. Insofern hat das
Modell mit quadriertem Term eine deutlich bessere Vorhersagekraft. Wir
können also davon ausgehen, dass dieses Modell den vorliegenden
Zusammenhang besser beschreibt. Merke: Das R^2 kann ebenfalls in
vergleichender Perspektive als Linearitätsdiagnostetool eingesetzt
werden!
- Der negative Koeffizient der quadrierten Altersvariable verweist auf
eine umgekehrt U-förmige Schätzkurve.
- Darüber hinaus sind die Koeffizienten der quadratischen Regression
aufgrund der komplexen Einbindung der unabhängigen Variable
(Quadrierung, Verwebung der beiden Terme)
grundsätzlich nicht sinnvoll interpretierbar. So ist durch Inklusion des
quadrierten Terms der eindeutige Interpretationsbezug einer bestimmten
Altersveränderung gesprengt, bzw. die bei Altersanstieg um ein
Jahr durch den Koeffizienten -0.001 ausgelöste
Vorhersageveränderung vom Niveau der Altersveränderung
abhängig: Steigt das Alter um ein Jahr von 2 auf 3, drückt der
Koeffizient des quadratischen Terms die Auswirkungen eine Veränderung um
5 Einheiten aus; steigt es von 3 auf 4, die einer Veränderung um 7
Einheiten. Diese Interpretationsproblematik wird schnell durch
Ausklammern der beiden Altersterme nach Alter * (0.1 – 0.001 * Alter) deutlich:
Der Alterskoeffizient ist selbst eine Funktion des Alters, die
mit einer bestimmten Altersveränderung verbunden Veränderung der AV ist
also nicht konstant, sondern abhängig vom Altersniveau bzw. dem
Ausgangsalterspunkt der Veränderung. Die aus der multivariaten
Datenanalyse bekannte ceteris-paribus-Interpretationsschablone greift
hier inhaltlich nicht, da es einen logischen Widerspruch bedeutet, eine
Veränderung des Alters unter gleichzeitiger Konstanthaltung des
(quadratischen) Alters anzunehmen.
Hinweis: Hätten wir uns stattdessen für die Logarithmierung
entschieden, so könnten wir einen logarithmischen Zusammenhang mit
formula = y~ln(x)
statt formula = y~poly(x,2)
visualisieren.
5.2 Interpretationsstrategien
Um die Eigenschaften der quadratischen Regressionskurve zu
beschreiben, können wir den Scheitelpunkt der Parabel bestimmen. Wir
definieren dazu die Funktion und ermitteln dann das Maximum per
Ableitung oder mittels des optimize- Befehls in R.
Dazu erstellen wir eine Funktion anhand der Regressionsgleichung:
alter_funktion <- function(x){4.80+0.10*x-0.0010*x^2}
Diese können wir von Hand ableiten, gleich Null setzen und nach x
auflösen. Oder automatisiert in R:
optimize(alter_funktion, interval = c(15, 95), maximum = T)
## $maximum
## [1] 50
##
## $objective
## [1] 7.3
Wichtig: Man muss immer einen Bereich interval=
bestimmen, in dem ein Scheitelpunkt gesucht werden soll. Nimm jeweils
einen Bereich, von dem du dir sicher bist, dass er den Scheitelpunkt
enthält. Wichtig ist auch, dass du richtig angibst ob ein Maximum oder
Minimum gesucht werden soll.
Der Scheitelpunkt liegt bei 50. Dies bedeutet, dass 50 jährige
Personen im Mittel die grösste Verantwortung gegenüber dem Klima
verspüren.
Die Form des Zusammenhangs können wir zudem über geschickt
ausgewählte Vorhersagen verfügbar machen. Diese können wiederum auch
nochmals helfen, die Bdeutung der quadratischen Modellierung im
vergleich zur linearen zu verdeutlichen. Ausgehend von Scheitelpunkt
sowie ein paar Aussagekräftigen und relevante Altersstufen lässt sich
vorhersagebasiert ein guter Eindruck von der Form des Zusammenhangs
sowie der Effektgrösse vermitteln.
library(ggeffects)
sd (ess8_ch_ss_1$klima_ver, na.rm=TRUE)
## [1] 2.235231
ggpredict(model_sqr1, terms = "alter[20, 35, 50, 65, 80]")
## # Predicted values of To what extent feel personal responsibility to reduce climate change
##
## alter | Predicted | 95% CI
## --------------------------------
## 20 | 6.38 | [6.14, 6.63]
## 35 | 7.04 | [6.89, 7.18]
## 50 | 7.23 | [7.07, 7.39]
## 65 | 6.96 | [6.80, 7.11]
## 80 | 6.23 | [5.93, 6.53]
Der quadratische fit sagt das Maximum der Klimaverantwortung für
50-jährige voraus und eine um fast einen Skalenpunkt (bzw. mehr 0,3
Standardabweichungseinheiten) geringere Klimaverantwortung an den
Rändern der Altersverteilung. Obgleich der Verantwortungsanstieg also
bis zum 50. Lebensjahr im Mittel stetig positiv ist, ist er im jungen
Erwachsenenleben (Anstieg um zwei Drittel Skalenpunkte zwischen 20 und
35) deutlich stärker ausgebildet als im mittleren Alter (Anstieg um
weniger als einen Fünftel Skalenpunkt zwischen 35 und 50). Auf der
anderen Seite der Verteilung gilt dies Umgekehrt. Ausweislich des
quadratischen Regressionsfits zeigt sich also eine relativ hohes und
stabiles Plateau der Klimaverantwortung in der Lebensmitte (35-65),
gerahmt von einem fulminaten Auf- und Abstieg in den rahmenden, frühen
und späten Lebensphasen.
Zuletzt vergleichen wir noch die R-Quadrate von linearer und
quadratischer Regression:
model_lin<-lm(klima_ver ~ alter, data = ess8_ch_ss_1)
summary(model_lin)
##
## Call:
## lm(formula = klima_ver ~ alter, data = ess8_ch_ss_1)
##
## Residuals:
## Min 1Q Median 3Q Max
## -6.8866 -0.8726 0.1424 1.1429 3.1496
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 6.8426286 0.1586060 43.142 <2e-16 ***
## alter 0.0004828 0.0030855 0.156 0.876
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.236 on 1480 degrees of freedom
## (43 Beobachtungen als fehlend gelöscht)
## Multiple R-squared: 1.654e-05, Adjusted R-squared: -0.0006591
## F-statistic: 0.02448 on 1 and 1480 DF, p-value: 0.8757
summary(model_sqr1)
##
## Call:
## lm(formula = klima_ver ~ alter + I(alter^2), data = ess8_ch_ss_1)
##
## Residuals:
## Min 1Q Median 3Q Max
## -7.2294 -1.1417 0.3478 1.5043 4.0435
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.7966541 0.3530216 13.587 < 2e-16 ***
## alter 0.0998233 0.0156638 6.373 2.47e-10 ***
## I(alter^2) -0.0010240 0.0001584 -6.465 1.37e-10 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.206 on 1479 degrees of freedom
## (43 Beobachtungen als fehlend gelöscht)
## Multiple R-squared: 0.0275, Adjusted R-squared: 0.02619
## F-statistic: 20.91 on 2 and 1479 DF, p-value: 1.106e-09
Das R-Quadrat der quadratischen Regression ist deutlich Grösser als das
der linearen und validiert somit zusätzlich die quadratische Regression
in diesem Fall als angemessen.