ich so einen Datensatz viel haben:Die mittlere Anzahl von Individuen/ha pro Spezies in R
dat<-data.frame(Plot_ID=c("P_1","P_1","P_2","P_3","P_3"),
Name=c("Spec1","Spec2","Spec3","Spec1","Spec4"),
Number=c(2,3,1,5,2))
Die Plot_ID ist die Handlung, wo die Art wurden acessed, ist der Name der Name der Art und der Anzahl ist die Menge, die in dieser Handlung gefunden wird. Ich möchte pro Spezies die Anzahl der Individuen insgesamt herausfinden.
Mein Problem ist, dass natürlich nicht jede Art in jeder Handlung vertreten ist. In diesem Fall würde die mittlere Anzahl von Individuen von Spec2 3/3 pro Diagramm betragen. Wenn ich die Aggregatfunktion so verwende:
agg.1<-aggregate(dat$Number, list(dat$Name),mean)
Die Anzahl der Personen für Spec2 ist 3, was nicht das ist, was ich wollte. Und ich möchte nicht wirklich jede Art in jede Handlung mit einem 0-Wert hinzufügen, wo sie nicht erscheint.
Name N/plot
Spec1 2.3 #Amount of individuals=7/Amount of plots=3
Spec2 1 #3/3
Spec3 0.3 #1/3
Spec4 0.6 #2/3
Das Ergebnis für Spec4 sollte 2/5 = 0,4? –
Eigentlich 2/3 = 0,66, ist der Mittelwert pro Diagramm wichtig. Sorry, ich habe einen Fehler gemacht – Lukas