I einen Datenframe dfu
haben, die für jede id
hält (ID team
gehört zu, team
viele ids
hat) den Prozentsatz Proben, bei denen eine Reihe von Eigenschaften prop1
, prop2
und so weiter beobachtet werden, basierend Bei einigen früheren Studien wird dies als eine Art Referenztabelle für zukünftige Studien verwendet. Jetzt gibt es Daten von einem neuen Experiment, das einen neuen Satz von ids
ergibt. Ich muss die prozentualen Proben finden, wobei prop1
, prop2
usw. auf team
Basis unter Verwendung der Referenzdaten in dfu
beobachtet werden. Dies könnte durch Zählen der Anzahl von Vorkommen pro id
in dfi
und nehmen dann einen gewichteten Durchschnitt von team
gruppiert erfolgen .- nicht alle IDs in dfu
vorhanden sein können und ein oder mehrere IDs nicht in dfu
in dfi
vorhanden sein können. Die in dfu
nicht vorhandenen IDs können vom gewichteten Durchschnitt ausgeschlossen werden, da für sie keine Anwesenheit pro Eigenschaftswerte verfügbar ist.gelten Verteilung auf neue Abtastsatz
dfu <- data.frame(id=1:6, team=c('A',"B","C","A","A","C"), prop1=c(0.8,0.9,0.6,0.5,0.8,0.9), prop2=c(0.2,0.3,.3,.2,.2,.3))
> dfu
id team prop1 prop2
1 A 0.8 0.2
2 B 0.9 0.3
3 C 0.6 0.3
4 A 0.5 0.2
5 A 0.8 0.2
6 C 0.9 0.3
>
> dfi <- data.frame(id=c(2 , 3 , 2 , 1 , 4 , 3 , 7))
> dfi
id
2
3
2
1
4
3
7
Das Ausgabeformat wäre wie folgt. Zum Beispiel wäre der Wert für prop1
für die Gruppe A
(0.8*1 + 0.5*1)/2 = 0.65
.
bevorzugen Basis R-Ansatz, andere Ansätze willkommen. Die Anzahl der Spalten könnte viele sein.
ähnliche Frage hier - http://stackoverflow.com/q/42105259/3206440, kann sei ein spezifischer Fall. – user3206440
Ich vermute, dass Ihre set.seed (100) nicht den Daten entspricht. – DJJ