libra <- c(3, 5, 6, 2)
solidus <- c(10, 18, 11, 16)
denarius <- c(9, 11, 10, 5)
# data frame with separate l, s, and d variables and default names
x <- data.frame(accounts = c(1, 2, 3, 4),
l = libra,
s = solidus,
d = denarius)
# data frame with deb_lsd variable and default names
y <- data.frame(accounts = c(1, 2, 3, 4),
lsd = deb_lsd(l = libra,
s = solidus,
d = denarius))
# Gather l, s, and d variables into deb_lsd column
deb_gather_lsd(x, l = l, s = s, d = d)
# Spread deb_lsd column into separate l, s, and d columns
deb_spread_lsd(y, lsd = lsd)
# Replace original columns with replace = TRUE
deb_gather_lsd(x, replace = TRUE)
deb_spread_lsd(y, replace = TRUE)
# Choose non-default column names
deb_gather_lsd(x, lsd_col = data, replace = TRUE)
deb_spread_lsd(y,
l_col = libra,
s_col = solidus,
d_col = denarius,
replace = TRUE)
# The two functions are opposites
z <- x %>%
deb_gather_lsd(replace = TRUE) %>%
deb_spread_lsd(replace = TRUE)
all.equal(x, z)
Run the code above in your browser using DataLab