Mittelwerte in verschachtelter Tabelle berechnen

Alles zum Thema der beschreibenden Statistik

Moderator: jogo

PhilippS
Beiträge: 15
Registriert: Fr Jan 17, 2020 8:51 am

Re: Mittelwerte in verschachtelter Tabelle berechnen

Beitrag von PhilippS »

gut, das habe ich sogar mittlerweile hinbekommen, da war ich etwas vorschnell, was die Frage anging.

Ich habe das Dataframe in dem alles drin ist dann CCI.SK genannt, aber es fehlt noch eine Bedingung, die mir ermöglicht, für beide Sorten jeweils Kontrolle und Stress zu generieren, für ein Merkmal. Gerade schaffe ich es nur, 2 Boxplotts je Behandlung oder je Genotyp darzustellen. Die berücksichtigen dann entweder den Genotyp nicht und es wird ein Mittelwert aller Kontrollen gebildet, so unten in dem Beispiel, oder es wird nur der Genotyp beachtet und Kontrolle sowie Stress eines Genotyps landen in einem Boxplott.

Code: Alles auswählen

boxplot(CCI.SK$CCl ~ CCI.SK$Behandlung,
        ylab = "CCI",
        xlab = "Sorten",
        main = "Photosynthese der beiden Sorten unter Stress")
Zuletzt geändert von jogo am Fr Jan 17, 2020 2:58 pm, insgesamt 1-mal geändert.
Grund: Formatierung verbessert. http://forum.r-statistik.de/viewtopic.php?f=20&t=29
jogo
Beiträge: 2086
Registriert: Fr Okt 07, 2016 8:25 am

Re: Mittelwerte in verschachtelter Tabelle berechnen

Beitrag von jogo »

Code: Alles auswählen

boxplot(CCl ~ Behandlung, data=CCI.SK, ...)
bigben
Beiträge: 2778
Registriert: Mi Okt 12, 2016 9:09 am

Re: Mittelwerte in verschachtelter Tabelle berechnen

Beitrag von bigben »

Sowas?

Code: Alles auswählen

CCI = rnorm(18)
Behandlung =  rep(c("Kontr", "Stress"), 9)
Genotyp = rep(c("Typ A", "Typ B"), each=9)
boxplot(CCI ~ Behandlung + Genotyp )
# oder auch
boxplot(CCI ~ Genotyp + Behandlung, at =c(1:2, 4:5))
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
PhilippS
Beiträge: 15
Registriert: Fr Jan 17, 2020 8:51 am

Re: Mittelwerte in verschachtelter Tabelle berechnen

Beitrag von PhilippS »

Danke BigBen, ich schaue mir das gleich nochmal an.

Jogo konnte mir mit seiner vorherigen Antwort schon mehr als weiter helfen und es funktioniert alles momentan wie es soll.

Gruß
Philipp
bigben
Beiträge: 2778
Registriert: Mi Okt 12, 2016 9:09 am

Re: Mittelwerte in verschachtelter Tabelle berechnen

Beitrag von bigben »

Dann ist alles gut. Wenn Jörgs Antwort hilft, dann hat er die Frage verstanden und ich nicht.
LG, Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
PhilippS
Beiträge: 15
Registriert: Fr Jan 17, 2020 8:51 am

Re: Mittelwerte in verschachtelter Tabelle berechnen

Beitrag von PhilippS »

nochmal eine Kleinigkeit,
gibt es eine Funktion, mit der ich eine neue Tabelle aus Teilen einer bereits bestehenden erstellen kann (z.b. die Tabelle die ich zu Beginn zeigte).

Also mein Ziel ist, das ich, um bei dem Beispiel zu bleiben, nur einen Genotyp aus einer größeren Tabelle mit vielen verschiedenen Genotypen in eine neue Tabelle überführen will, sodass mir dann in der neuen Tabelle nur noch alle Messungen für Lip angezeigt wird.

Gruß Philipp
jogo
Beiträge: 2086
Registriert: Fr Okt 07, 2016 8:25 am

Re: Mittelwerte in verschachtelter Tabelle berechnen

Beitrag von jogo »

Hallo Philipp,

wenn es um einen einzelnen Genotyp geht, kann man die Funktion subset() verwenden direkt indizieren:

Code: Alles auswählen

D <- read.csv2("http://forum.r-statistik.de/download/file.php?id=835")
subset(D, Genotyp=="Lip")  ### oder
D[D$Genotyp=="Lip", ]
Vielleicht willst Du die anschließenden Operation für jeden Genotyp durchführen, dann wären split() oder by() angebracht, z.B.:

Code: Alles auswählen

L <- split(D, D$Genotyp)
lapply(L, ...) #### oder sapply(L, ...)
Bitte schaue Dir die Dokumentation zu den Funktionen an und lasse Dir die Beispiele vorführen.

Gruß, Jörg
PhilippS
Beiträge: 15
Registriert: Fr Jan 17, 2020 8:51 am

Re: Mittelwerte in verschachtelter Tabelle berechnen

Beitrag von PhilippS »

Vielen Dank, ich werde das ausprobieren.

Gruß
Philipp
Antworten