Wissenschaftliche Methoden [SS 2017]

Auf Wunsch der Studierenden fand im Rahmen der Vorlesung "Wissenschaftliche Methoden" ein äußerst kurz gehaltener R-Crashkurs statt. Anbei finden Sie die Unterlagen hierzu.

[1] Skript zum R-Crashkurs

[2] Datensatzbeschreibungen "Toothgrowth" und "Swiss" [in Englisch]

[3] Hinweise zu Statistik-Software

Weiterführende Informationen zu R finden sich auch im Online-Tutorial auf dieser Website: 

R-Datenanalyse

[1] Skript zum R-Crashkurs


###Datenimport###


# Eigener Datensatz kann über "Import Dataset" [siehe rechts "Environment"] geladen werden

# Wichtige Anmerkung: Kommas werden in Punkte umgewandelt, damit statistische Analysen funktionieren. Hierzu wurde auch der Generator für den Import gezeigt.



###Beispieldatensatz laden###


data("ToothGrowth")



###Datensatz kennenlernen/analysieren###


ls(ToothGrowth)

str(ToothGrowth)

View(ToothGrowth)


by(ToothGrowth$len, INDICES = list(ToothGrowth$supp, ToothGrowth$dose), summary)

plot (ToothGrowth$dose,ToothGrowth$len)

plot(ToothGrowth)



###Bestimmung von Datentypen###


# Anmerkung: Es gibt folgende Datentypen: numeric, complex, logical, character, raw


mode(ToothGrowth$len)



###Neue Variable generieren/löschen###


attach(ToothGrowth)

ToothGrowth$neuevariable <- ToothGrowth$len/ToothGrowth$dose

View(ToothGrowth)

ToothGrowth$neuevariable <- NULL



###Basisanalysen###



###Welch Two Sample Test Nr. 1: Ist Orangensaft effektiver als Ascorbinsäure? [Zahnwachstum]###


t.test(len~supp, data=ToothGrowth)


# Interpretation: Erster t-Test zeigt, dass generell OS effektiver als AS ist.Null-Hypothese (Differenz = 0) kann verworfen werden -> Indikation für H1. Signifikanz/p-Wert jedoch schwach (-> t-Test für dose = 2.0 zeigt Ursache hierfür)


t.test(len~supp, data=ToothGrowth[ToothGrowth$dose==0.5,])

t.test(len~supp, data=ToothGrowth[ToothGrowth$dose==1.0,])

t.test(len~supp, data=ToothGrowth[ToothGrowth$dose==2.0,])



###Welch Two Sample Test Nr. 2: Besteht eine Korrelation zwischen Zahnlänge und Dosierung?###


# Schritt 1: Dosierungen definieren, die verglichen werden sollen, z.B. dose1 = 0,5 und 1 mg


dose1 <- subset(ToothGrowth, dose %in% c(0.5, 1.0))

dose2 <- subset(ToothGrowth, dose %in% c(0.5, 2.0))

dose3 <- subset(ToothGrowth, dose %in% c(1.0, 2.0))


# Schritt 2: Tests für dose 1 bis 3


t.test(len ~ dose, paired = F, var.equal = F, data = dose1)

t.test(len ~ dose, paired = F, var.equal = F, data = dose2)

t.test(len ~ dose, paired = F, var.equal = F, data = dose3)


# Interpretation: Bei allen t-Tests kann die H0 verworfen werden -> Indikation für H1



###Korrelationsanalyse###


cor (ToothGrowth$len, ToothGrowth$dose, method = c("pearson"))

cor (ToothGrowth$len, ToothGrowth$dose, method = c("kendall"))

cor (ToothGrowth$len, ToothGrowth$dose, method = c("spearman"))



###Regressionsanalyse###


# Anmerkung: Datensatz ToothGrowth ist nicht geeignet für eine Regressionsanalyse -> Neuer Datensatz "swiss"



###Datensatz kennenlernen/analysieren###


# Folgende Variablen  sind enthalten:

# Fertility  Ig, "common standardized fertility measure"

# Agriculture % of males involved in agriculture as occupation

# Examination % draftees receiving highest mark on army examination

# Education % education beyond primary school for draftees.

# Catholic % "catholic" [as opposed to "protestant"].

# Infant.Mortality % live births who live less than 1 year.


data("swiss")

View(swiss)

plot(swiss)

cor(swiss)


###Einfache lineare Regression###



###Modellwahl###


# Anmerkung: Die Auswahl der Variablen, die ins Modell eingehen sollen, kann vorab per Akaikes Informationskriterium [AIC] erfolgen. Es gibt eine ganze Reihe weiterer Kriterien, die angelegt werden können.


step (lm(swiss$Fertility ~ swiss$Agriculture + swiss$Examination + swiss$Education + swiss$Catholic + swiss$Infant.Mortality))


regfert <- lm(formula = swiss$Fertility ~ swiss$Agriculture + swiss$Education + swiss$Catholic + swiss$Infant.Mortality)



###Ergebnisse###


regfert$coefficients

summary(regfert)



###Modellannahmen testen###

plot(regfert)

[2] Datensatzbeschreibungen "Toothgrowth" und "Swiss" [in Englisch]

Toothgrowth

-> Data

Swiss

-> Data

[3] Hinweise zu Statistik-Software

Open Source:

Proprietäre Software: