Mybe поздно, но вы также можете попытаться управлять им без каких-либо внешних пакетов, в два этапа:
Сначала объедините W...
по BRAND
:
# aggregate by brand, and not using the MEDIUM column:
one <- aggregate(. ~ BRAND, data = dats[,-2], sum)
Затем медиумы:
# frequencies
# EDIT HERE
# two <- as.data.frame.matrix(table(dats$BRAND,dats$MEDIUM))
# replace with ones
# two[(two)>1] <- 1
# thanks to Ronak Shah
two <- data.frame(BRAND = unique(dats$BRAND), +(table(dats$BRAND, dats$MEDIUM) > 0))
Наконец, вы можете объединить два набора данных:
merge(one, two)
BRAND W1 W2 W3 W4 W5 newspapers radio tv
1 B1 8 5 5 6 5 1 1 1
2 B2 0 4 1 1 1 0 1 1