Open markfairbanks opened 8 months ago
This didn't work previously, but now it does
library(dtplyr) library(dplyr) library(tidyr) library(data.table) df <- tibble(x_5 = 5, x_6 = 6, y_7 = 7, y_8 = 8) df %>% pivot_longer(everything(), names_to = c(".value", "id"), names_sep = "_") #> # A tibble: 4 × 3 #> id x y #> <chr> <dbl> <dbl> #> 1 5 5 NA #> 2 6 6 NA #> 3 7 NA 7 #> 4 8 NA 8 data.table(df) %>% melt(measure.vars=measure(value.name, id, sep="_")) #> id x y #> <char> <num> <num> #> 1: 5 5 NA #> 2: 6 6 NA #> 3: 7 NA 7 #> 4: 8 NA 8 data.table(df) %>% melt(measure.vars=measurev(list(value.name=NULL, id=NULL), sep="_")) #> id x y #> <char> <num> <num> #> 1: 5 5 NA #> 2: 6 6 NA #> 3: 7 NA 7 #> 4: 8 NA 8 df %>% lazy_dt() %>% pivot_longer(everything(), names_to = c(".value", "id"), names_sep = "_") %>% collect() #> Error in `pivot_longer()`: #> ! `data.table::melt()` doesn't currently support melting of unbalanced datasets.
This didn't work previously, but now it does