I am looking at some of the pivot_longer code at the moment and just want to understand: 1) how best to keep variables while making the data longer and 2) to understand how I can drop variables within the everything() call and 3) some explanation on the arguments I can use for names_pattern and what exactly (.)(.) is doing?
library(tidyverse)
anscombe %>%
pivot_longer(everything(),
names_to = c(".value", "set"),
names_pattern = "(.)(.)"
)
#added in an ID variable I want to be retained to the corresponding rows and
#added in an additional set of columns to make longer too
anscombe_test <- cbind(id = c(letters[1:11]), anscombe, z1 = c(1:11),z2 = c(11:21), z3 = c(31:41), z4 = c(51:61))
anscombe_test %>%
pivot_longer(everything(),
names_to = c(".value", "set"),
names_pattern = "(.)(.)"
)
It'll be best if you provide a concrete example as there are many ways of doing this.
Only those variables you pass to the cols parameter will be pivoted. everything() is just a convenient shorthand to pivot all variables. You can pass variable names the same way you do with select().
names_pattern takes a regular expression. You can learn about them here. The () are used to capture matched groups (more about this on the website I linked).
In terms of the keep, I just wanted to see how best to say keep a location variable in addition with id while doing the pivot_longer. From what you provided I should be fine though