Given the following data:
df = tibble::tribble(
~term, ~x1, ~x2, ~x3, ~x4, ~x5, ~x6, ~x7, ~x8, ~x9, ~x10, ~x11,
"x1", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
"x2", 1, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
"x3", 2, 0, NA, NA, NA, NA, NA, NA, NA, NA, NA,
"x4", 1, 0, 0, NA, NA, NA, NA, NA, NA, NA, NA,
"x5", 1, 0, 0, 0, NA, NA, NA, NA, NA, NA, NA,
"x6", 0, 0, -0.333333333333333, 0, 0, NA, NA, NA, NA, NA, NA,
"x7", 0, 0, 0, -0.333333333333333, 0, 0, NA, NA, NA, NA, NA,
"x8", 0, 0, 0, 0, 0, 0, 0, NA, NA, NA, NA,
"x9", 0, 0, 0, -0.333333333333333, 0, 0, -0.333333333333333, 0, NA, NA, NA,
"x10", 0, 0, 0, 0, 0, 0, 0, 0, 0, NA, NA,
"x11", 0, 0, -0.333333333333333, 0, 0, -0.333333333333333, 0, 0, 0, 0, NA
)
I would like to convert this to a three column format.
Essentially, I would like to convert to something like the following:
v1 v2 value
x1 x2 1
x1 x3 2
x1 x4 1
...
where v1
would be the column, v2
would be the row.
How would I convert this?