Plots

Skript



setwd("/Volumes/GoogleDrive/Meine Ablage/+++ Universität/Psych/PsyBSc2_Statistik I/Projektarbeit/Datensatz")

library(jsonlite)
data = as.data.frame(jsonlite::fromJSON("data.json"))

library(dplyr)
data_new <- filter(data, complete.cases(data$ended))  # unvollständige Daten entfernen

data_new <- filter(data_new, data_new$sozialwis==TRUE) # nur Studierende der SoWi




##### Deskriptiv-Analyse der UV-----

# Gender

gender <- factor(data_new$gender,
                 labels = c("männlich", "weiblich", "divers"))

plot(gender,
     ylab = "absolute Häufigkeit",
     main = "Geschlechterverhältnis",
     sub = "n = 80",
     col = "lightblue") # Legende für die AH

# Alter

par(mfrow=c(1,1))
hist(data_new$alter, breaks = 10,
     plot = TRUE,
     ylab = "absolute Häufigkeit", 
     xlab = "Alter",
     xlim = c(10,60),
     main = "Verteilung nach Alter", 
     sub = "n = 80",
     col = "lightblue")

# Studienfach

fach <- factor(na.omit(data_new$fach),
               labels = c("Soziologie", "Politikwissenschaft", "Wirtschaftswissenschaft", "Psychologie", "Erziehungswissenschaft", "Sonstiges"))

table(fach)
prop.table(table(fach))

length(fach)

par(mfrow=c(1,1),
    mai=c(1,2.2,.5,.5)) # Margins
barplot(table(fach),
        horiz = TRUE, # insg. horizontal ausrichten
        las = 2, # y-Namen horizontal
        cex.names = 1, # Größe der y-Namen
        xlab = "absolute Häufigkeit",
        main = "Studienfächer",
        sub = "n = 80",
        col = "lightblue")

prop.table(table(fach))

# Fachsemester

table(data_new$fachsemester)

prop.table(table(data_new$fachsemester))



##### Skalenwerte bilden -----

library(car)

# Umpolung inverser Items (pref2 / pref 7)

data_new$pref2_invers <- recode(data_new$pref2, "1=5; 2=4; 3=3; 4=2; 5=1")
data_new$pref7_invers <- recode(data_new$pref7, "1=5; 2=4; 3=3; 4=2; 5=1")

# Umpolung inverser Items (gewiss2 / gewiss3 / gewiss4 / gewiss5 / gewiss6)

data_new$gewiss2_invers <- recode(data_new$gewiss2, "1=5; 2=4; 3=3; 4=2; 5=1")
data_new$gewiss3_invers <- recode(data_new$gewiss3, "1=5; 2=4; 3=3; 4=2; 5=1")
data_new$gewiss4_invers <- recode(data_new$gewiss4, "1=5; 2=4; 3=3; 4=2; 5=1")
data_new$gewiss5_invers <- recode(data_new$gewiss5, "1=5; 2=4; 3=3; 4=2; 5=1")
data_new$gewiss6_invers <- recode(data_new$gewiss6, "1=5; 2=4; 3=3; 4=2; 5=1")

# Mittelwerte für pref und gewiss

data_new$gewiss_mean <- rowMeans(subset(data_new, select = c("gewiss1", "gewiss2_invers", "gewiss3_invers", "gewiss4_invers", "gewiss5_invers", "gewiss6_invers")))
data_new$pref_mean <- rowMeans(subset(data_new, select = c("pref1", "pref2_invers", "pref3", "pref4", "pref5", "pref7_invers", "pref8")))

# Var / SD

gewiss_var <- var(data_new$gewiss_mean)
gewiss_sd <- sd(data_new$gewiss_mean)

pref_var <- var(data_new$pref_mean)
pref_sd <- sd(data_new$pref_mean)
##### Deskriptiv-Analyse der AV -----

# Normalverteilungsvoraussetzung

dev.off()
qqnorm(data_new$gewiss_mean,
       main = "Prüfung der Normalverteilung der Gewissenhaftigkeit",
       cex.main = 1)
qqline(data_new$gewiss_mean)

# Gewiss_mean inferenzstatistisch auf X~N prüfen

qqnorm(data_new$pref_mean,
       main = "Prüfung der Normalverteilung der Präferenz",
       cex.main = 1)
qqline(data_new$pref_mean)

# Streuung deskriptiv prüfen

par(mfrow=c(2,1))
boxplot(data_new$gewiss_mean,
        horizontal = TRUE,
        col = "lightblue",
        main = "Streuung des Primärfaktors Gewissenhaftigkeit",
        cex.main = .9,
        cex.axis = .9,
        xlab = "Gewissenhaftigkeit",
        sub = "n = 80")

boxplot(data_new$pref_mean,
        horizontal = TRUE,
        col = "lightblue",
        cex.main = .9,
        cex.axis = .9,
        main = "Streuung der Präferenz für Methoden und Statistik",
        xlab = "Präferenz für Methoden und Statistik",
        sub = "n = 80")


par(mfrow=c(1,2),
    mai=c(1,1,1,.5))
h <- hist(data_new$pref_mean, breaks = 10, 
          col = "lightblue",
          freq = TRUE,
          ylim = c(0,30),
          cex.main = .9,
          cex.axis = .9,
          main = "Streuung der Präferenz für Methoden und Statistik",
          xlab = "Präferenz für Methoden und Statistik",
          ylab = "absolute Häufigkeit",
          sub = "n = 80")
          text(h$mids,h$counts,labels=h$counts, adj=c(0.5, -0.5))

h <- hist(data_new$gewiss_mean, breaks = 10, 
          col = "lightblue",
          ylim = c(0,30),
          freq = TRUE,
          cex.main = .9,
          cex.axis = .9,
          main = "Streuung des Primärfaktors Gewissenhaftigkeit",
          xlab = "Gewissenhaftigkeit",
          ylab = "absolute Häufigkeit",
          sub = "n = 80")
          text(h$mids,h$counts,labels=h$counts, adj=c(0.5, -0.5))