gather_multivalue: tidyr's gather for multiple values

Description Usage Arguments Examples

Description

Extension of 'tidyr::gather' when there is a key with multiple values. Same purpose as Stata's 'reshape' long.

Usage

1
2
gather_multivalue(data, key = "key", values,
  regex = "^([a-zA-Z]+)(\\d+)$")

Arguments

data

a data frame

key

key, a string

values

A selection of columns. If empty, all variables are selected. You can supply bare variable names, select all variables between x and z with x:z, exclude y with -y. For more options, see the dplyr::select() documentation.

regex

a regular expression used to extract the desired values

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
scores <- data.frame(
id = LETTERS[1:5],
age2000 = 11:15,
age2010 = 21:25,
scores2000 = 96:100,
scores2010 = 100:96)

gather_multivalue(scores, "year", -id)
gather_multivalue(scores, "year", age2000:scores2010)


scores2 <- data.frame(
id = LETTERS[1:5],
age_2000 = 11:15,
age_2010 = 21:25,
scores_2000 = 96:100,
scores_2010 = 100:96)

gather_multivalue(scores2, "year", -id, regex = "([a-z]+)_(\\d+)")

weiyangtham/twydyverse documentation built on May 17, 2019, 8:46 p.m.