| pivot_longer {tidytable} | R Documentation | 
Pivot data from wide to long
Description
pivot_longer() "lengthens" the data, increasing the number of rows and decreasing
the number of columns.
Usage
pivot_longer(
  .df,
  cols = everything(),
  names_to = "name",
  values_to = "value",
  names_prefix = NULL,
  names_sep = NULL,
  names_pattern = NULL,
  names_ptypes = NULL,
  names_transform = NULL,
  names_repair = "check_unique",
  values_drop_na = FALSE,
  values_ptypes = NULL,
  values_transform = NULL,
  fast_pivot = FALSE,
  ...
)
Arguments
| .df | A data.table or data.frame | 
| cols | Columns to pivot.  | 
| names_to | Name of the new "names" column. Must be a string. | 
| values_to | Name of the new "values" column. Must be a string. | 
| names_prefix | Remove matching text from the start of selected columns using regex. | 
| names_sep | If  | 
| names_pattern | If  | 
| names_ptypes,values_ptypes | A list of column name-prototype pairs. See “?vctrs::'theory-faq-coercion“' for more info on vctrs coercion. | 
| names_transform,values_transform | A list of column name-function pairs. Use these arguments if you need to change the types of specific columns. | 
| names_repair | Treatment of duplicate names. See  | 
| values_drop_na | If TRUE, rows will be dropped that contain NAs. | 
| fast_pivot | experimental: Fast pivoting. If  | 
| ... | Additional arguments to passed on to methods. | 
Examples
df <- data.table(
  x = 1:3,
  y = 4:6,
  z = c("a", "b", "c")
)
df %>%
  pivot_longer(cols = c(x, y))
df %>%
  pivot_longer(cols = -z, names_to = "stuff", values_to = "things")