Skip to content

Pivoting

Pivoting changes the representation of a rectangular dataset, without changing the data inside of it. See vignette("pivot") for more details and examples.

pivot_longer()
Pivot data from wide to long
pivot_wider()
Pivot data from long to wide

Rectangling

Rectangling turns deeply nested lists into tidy tibbles. See vignette("rectangle") for more details and examples.

hoist() unnest_longer() unnest_wider() unnest_auto()
Rectangle a nested list into a tidy tibble

Nesting

Nesting uses alternative representation of grouped data where a group becomes a single row containing a nested data frame. See vignette("nest") for more details and examples.

nest() unnest()
Nest and unnest

Character vectors

Multiple variables are sometimes pasted together into a single column, and these tools help you separate back out into individual columns.

extract()
Extract a character column into multiple columns using regular expression groups
separate()
Separate a character column into multiple columns with a regular expression or numeric locations
separate_rows()
Separate a collapsed column into multiple rows
unite()
Unite multiple columns into one by pasting strings together

Missing values

Tools for converting between implicit (absent rows) and explicit (NA) missing values, and for handling explicit NAs.

complete()
Complete a data frame with missing combinations of data
drop_na()
Drop rows containing missing values
expand() crossing() nesting()
Expand data frame to include all possible combinations of values
expand_grid()
Create a tibble from all combinations of inputs
fill()
Fill in missing values with previous or next value
full_seq()
Create the full sequence of values in a vector
replace_na()
Replace NAs with specified values

Miscellanea

chop() unchop()
Chop and unchop
pack() unpack()
Pack and unpack
uncount()
"Uncount" a data frame

Data

billboard
Song rankings for Billboard top 100 in the year 2000
construction
Completed construction in the US in 2018
fish_encounters
Fish encounters
relig_income
Pew religion and income survey
smiths
Some data about the Smith family
table1 table2 table3 table4a table4b table5
Example tabular representations
us_rent_income
US rent and income data
who population
World Health Organization TB data
world_bank_pop
Population data from the world bank

Superseded

Functions that are still supported but no longer receive active development, as better solutions now exist.

spread()
Spread a key-value pair across multiple columns
gather()
Gather columns into key-value pairs
nest_legacy() unnest_legacy()
Legacy versions of nest() and unnest()