2017-11-16 2 views
0

Ich habe eine Tabelle, die etwa wie folgt aussieht:Erstellen von Auswertungsstatistik Tabelle von Teilmengen von Daten in R

Time  Carbon  OD 
0  Sucrose  1.13 
0  Citric acid 1.54 
24  Histidine 2.1 
24  Glutamine 1.7 
48  Maleic acid 2.1 
48  Furm acid 3.1 
72  Tryptophan 2.3 
72  Serine  1.2 
72  etc   etc 

Es vier Zeitpunkt hat, und 9 verschiedene Kohlenstoff, die in drei Gruppen (organische Säuren gespalten werden können , Zucker, Aminosäuren).

EDIT - wenn es hilfreich ist, wurde die OD für jeden Kohlenstoff zu jedem Zeitpunkt 8 mal gemessen. Früher verwendete ich diesen Code Auswertungsstatistiken für die gesamte Sache zu schaffen:

summary <- aggregate(dataset2$OD, 
        by = list(Time = dataset2$Time, Carbon = dataset2$Carbon), 
        FUN = function(x) c(mean = mean(x), sd = sd(x), 
             n = length(x))) 
summary <- do.call(data.frame, dataset2) 
summary$se <- dataset2$x.sd/sqrt(dataset2$x.n) 

Aber jetzt würde Ich mag die gleichen Auswertungsstatistiken für die Mittel jeder der drei Gruppen erzeugen, wenn möglich, so würde ich etwas bekommen wie folgt:

Time Group OD SD n SE 
    0  Group 1  
24  Group 1 
48  Group 1 
72  Group 1 
    0  Group 2 

Ich bin mir nicht sicher, wie ich dies in meinem Code angeben soll?

+0

Sie sagten vier Zeitpunkte und 9 Kohlenstoffatomen, aber Ihnen zur Verfügung gestellten nur 1 Mal pro Punkt Kohlenstoff und nur 3 Kohlenstoffatomen. Können Sie den minimalen Datensatz bereitstellen, der für die Erstellung der Zusammenfassungsstatistiken erforderlich ist? – useR

+0

Entschuldigung, das habe ich jetzt gemacht! – Roseanna

+0

Dies ist immer noch nicht gut genug, da Sie nur _ein_ Zeitpunkt für jeden 'Carbon' haben. Sie können SD und SE nicht mit nur einem Datenpunkt berechnen. – useR

Antwort

1

Mit dplyr:

dataset2 %>% 
    group_by(Time, Group) 
    summarise(OD = mean(OD), 
      SD = sd(OD), 
      n = n()) 
+0

Möglicherweise möchte ich den Standardfehler zu diesem 'SE = SD/sqrt (n)' hinzufügen –

Verwandte Themen