Oder vielleicht sowas:
Code: Alles auswählen
d <- data.frame(
ID=c("Jonathan", "Hannes", "Kathrin", "Jennifer", "Annika", "Benjamin", "Jonathan", "Hannes", "Kathrin", "Jennifer", "Annika", "Benjamin"),
Code=c("Apfel", "Apfel", "Apfel", "Apfel", "Apfel", "Apfel", "Banane", "Birne", "Kirsche", "Banane", "Banane", "Kiwi"))
X <- xtabs( ~ ID + Code, data=d)
sum(X[,"Apfel"] & X[,"Banane"]) ## oder
sum(pmin(X[,"Apfel"], X[,"Banane"]))
Das ist doch mal wieder ein schönes Ratespiel ...
hier noch etwas für die Liebhaber von
data.table:
Code: Alles auswählen
library("data.table")
d <- data.table(
ID=c("Jonathan", "Hannes", "Kathrin", "Jennifer", "Annika", "Benjamin", "Jonathan", "Hannes", "Kathrin", "Jennifer", "Annika", "Benjamin"),
Code=c("Apfel", "Apfel", "Apfel", "Apfel", "Apfel", "Apfel", "Banane", "Birne", "Kirsche", "Banane", "Banane", "Kiwi"),
key="Code")
d["Apfel"][d["Banane"], on="ID", .N] ## oder
d[ID %in% d["Apfel", ID]][!"Apfel", .N, Code] ## oder
d[ID %in% d["Apfel", ID]][, .N, Code][!"Apfel"]
Gruß, Jörg