2016-08-02 13 views
-1

Ist es möglich, ein Limit für die Anzahl der Spalten schafft das ist weniger als biggest_group_size?Einstellen der benutzerdefinierten Tiefe in Tidyr Spread

+1

Es wäre einfacher zu helfen, wenn Sie irgendeine Art von zur Verfügung gestellt [ reproduzierbares Beispiel] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example) mit Beispieleingabe und gewünschter Ausgabe. – MrFlick

Antwort

1

Nicht ganz klar über die größer als die biggest_group_size. Wenn wir Spalten haben wollen, um mit NA oder "", verwenden Sie das drop = FALSE Argument in spread nach dem ‚id‘ zu factor mit extra levels Wechsel angegeben

library(dplyr) 
library(tidyr) 
df1 %>% 
    group_by(user_id) %>% 
    mutate(id = paste0("pred_", row_number()), 
      id = factor(id, levels = paste0("pred_", 1:4))) %>% 
    spread(id, pred, drop=FALSE, fill = "") 
+0

Was ich meinte, war die Menge der Ausbreitung zu begrenzen, um "N" zu sein, wobei "N" <"größte_group_size". Ich benutze dies für eine Holdout-Periode, in der ich zuerst nach "Datum" sortiere und dann nur die ersten "N" Beobachtungen verteilen möchte. –

+0

@NickResnick Bitte fügen Sie ein kleines Beispiel und die erwartete Ausgabe in Ihrem Beitrag zum besseren Verständnis ein. – akrun

Verwandte Themen