Ich habe dies:Frequenztabelle mit dplyr in r
set.seed(123)
class = c("A", "B", "C", "D")
have <- data.frame(ID = c(1:12), CLUSTER = rep(1:4, 3), VAL = sample(class, 12, replace = TRUE))
Ich möchte dies:
want <- data.frame(CLUSTER = c(1,2,3,4), D = c(2, 2, 0, 2), C = c(0, 1, 0, 0), A = c(1, 0, 2, 0), B = c(0, 0, 1, 1))
Ich möchte dies mit dplyr
tun, da es andere Spalten in meiner ursprünglichen Daten, die ich will zusammenfassen.
Ich war auf der Suche nach so etwas wie:
have %>% group_by(CLUSTER) %>% table(VAL) %>% summarize(sum(OTHER_VARS)) %>% mutate(OTHER_VARS)
ich weiß, ich table
oder xtabs
oder count
in dplyr
verwenden kann, aber es entweder verliert den Datenrahmenklasse oder Daten konvertiert zu lange statt breit.
danke.
Bitte verwenden Sie 'set.seed (x)' zuerst bei der Verwendung von 'sample' - sonst Ihre' have' und 'want' nicht reproduzierbar sind. Kannst du bitte bearbeiten? (Und nein, ich bin nicht der Downvoter) – thelatemail
Überprüfen Sie Ihre Ausgabe. Es passt nicht zu der Eingabe –