Übungsprojekt: Daten erkunden

Lernziele

Am Ende dieser Übung solltest du in der Lage sein:

  • Items korrekt umzukodieren (reverse coding).
  • Skalenmittelwerte zu berechnen und die interne Konsistenz mit Cronbach’s Alpha zu bewerten.
  • Eine Explorative Faktorenanalyse (EFA) mit drei Faktoren durchzuführen.
  • Deskriptive Statistiken zu berechnen und Verteilungen zu interpretieren.
  • Schiefe Verteilungen und Ausreißer zu identifizieren.

Übersicht über die Aufgabe

Du hast einen Datensatz mit 20 Variablen, darunter Likert-Skalen-Daten (zur Messung von Motivation, Stress und Engagement) sowie einige kategoriale Variablen (z. B. Geschlecht, Studiengang). Die Likert-Items sind drei vordefinierten Skalen zugeordnet, und einige davon sind reverse-coded.

Deine Aufgabe:

  1. Datensatz laden (R oder SPSS)
  2. Datenstruktur erkunden (Variablentypen, fehlende Werte, Verteilungen)
  3. Reverse Coding durchführen
  4. Skalenmittelwerte berechnen
  5. Explorative Faktorenanalyse (EFA) mit drei Faktoren durchführen
  6. Cronbach’s Alpha berechnen
  7. Schiefe Verteilungen und Ausreißer identifizieren
  8. Ergebnisse interpretieren

Datenbeschreibung

VariableTypBeschreibung
motivation1, motivation2, motivation3, motivation4_revLikert (1-5)Erfasst intrinsische Motivation (motivation4_rev ist umgekehrt kodiert)
stress1, stress2, stress3, stress4_revLikert (1-5)Erfasst wahrgenommenen Stress (stress4_rev ist umgekehrt kodiert)
engagement1, engagement2, engagement3, engagement4_revLikert (1-5)Erfasst akademisches Engagement (engagement4_rev ist umgekehrt kodiert)
ageNumerischAlter der Teilnehmenden
genderKategorial1 = Männlich, 2 = Weiblich, 3 = Divers
study_programKategorialStudiengang
GPANumerischNotendurchschnitt (0-4 Skala)
social_media_hoursNumerischSelbstberichtete Social-Media-Nutzung pro Tag (in Stunden)

Schritt-für-Schritt-Anleitung

  1. Datensatz laden
  2. Daten erkunden
    • Verteilungen analysieren
    • Ausreißer analysieren
  3. Reverse Coding (wo notwendig)
  4. Cronbach’s Alpha für alle Skalen berechnen
  5. Mittelwerte berechnen
  6. EFA durchführen

Lösungen

Lösung in R

Zuerst müssen wir die Daten einmal laden.

read.csv()

Dann können wir uns die Daten mal etwas genauer ansehen. Es ist nicht ganz wichtig, aber es hilft dabei, ein Gefühl für die Daten zu bekommen.

str(data)summary(data)colSums(is.na(data))

Natürlich interessieren uns meistens nicht die Rohdaten, sondern aggregierte Daten, und die sollten wir mal berechnen. Dabei kann es auch sein, dass wir Daten rekodieren müssen.

data$motivation4_rev <- 6 - data$motivation4_revdata$stress4_rev <- 6 - data$stress4_revdata$engagement4_rev <- 6 - data$engagement4_rev
data$motivation_mean <- rowMeans(data[, c("motivation1", "motivation2", "motivation3", "motivation4_rev")])data$stress_mean <- rowMeans(data[, c("stress1", "stress2", "stress3", "stress4_rev")])data$engagement_mean <- rowMeans(data[, c("engagement1", "engagement2", "engagement3", "engagement4_rev")])

Für die tatsächliche Analyse gibt es viele Methoden, aber ich lade hier mal das psych-Package..

library(psych)efa_result <- fa(data[, c(1:12)], nfactors = 3, rotate = "varimax")print(efa_result$loadings)
psych::alpha(data[, c("motivation1", "motivation2", "motivation3", "motivation4_rev")])psych::alpha(data[, c("stress1", "stress2", "stress3", "stress4_rev")])psych::alpha(data[, c("engagement1", "engagement2", "engagement3", "engagement4_rev")])

Wir können die Analyse natürlich auch visuell angehen.

library(moments)skewness(data$GPA)skewness(data$social_media_hours)boxplot(data$GPA, main="GPA Verteilung") boxplot(data$social_media_hours, main="Social-Media-Nutzung")

Interpretation: Faktorenladung (welche Items laden auf welche Faktoren?), Cronbach’s Alpha (interne Konsistenz gegeben?); gibt es schiefe verteilte Variablen bzw. Ausreißer?

Lösung in SPSS

  1. Datei öffnen
  2. Analyse → Deskriptive Statistiken → Häufigkeiten
  3. COMPUTE motivation4_rev = 6 - motivation4_rev. COMPUTE stress4_rev = 6 - stress4_rev. COMPUTE engagement4_rev = 6 - engagement4_rev. EXECUTE.
  4. COMPUTE motivation_mean = MEAN(motivation1, motivation2, motivation3, motivation4_rev). COMPUTE stress_mean = MEAN(stress1, stress2, stress3, stress4_rev). COMPUTE engagement_mean = MEAN(engagement1, engagement2, engagement3, engagement4_rev). EXECUTE.
  5. Analyse → Dimensionenreduktion → Faktorenanalyse
  6. Analyse → Skala → Reliabilitätsanalyse
  7. Analyse → Deskriptive Statistiken → Explore
  8. Interpretation: Faktorenladung (welche Items laden auf welche Faktoren?), Cronbach’s Alpha (interne Konsistenz gegeben?); gibt es schiefe verteilte Variablen bzw. Ausreißer?

Zusammenfassung

Diese Übung kombiniert praktische Datenanalyse mit statistischen Konzepten, um ein tiefes Verständnis für explorative Datenanalyse und Faktorenanalyse zu fördern.

Alles klar?

Ich hoffe, der Beitrag war für dich soweit verständlich. Wenn du weitere Fragen hast, nutze bitte hier die Möglichkeit, eine Frage an mich zu stellen!

Stelle Dominik eine Frage