У меня есть матрица в этом формате:
Example_matrix<- structure(list(X1 = c("Species 1", "Species 2", "Species 3",
"Species 4", "Species 5", "Species 6", "Species 7", "Species 8"
), `Site 1` = c(0, 0, 0, 2, 2, 0, 0, 5), `Site 2` = c(0, 0, 0,
4, 0, 0, 0, 0), `Site 3` = c(0, 1, 0, 0, 0, 1, 0, 0), `Site 4` = c(0,
0, 0, 0, 0, 1, 0, 0)), class = c("spec_tbl_df", "tbl_df", "tbl",
"data.frame"), row.names = c(NA, -8L), spec = structure(list(
cols = list(X1 = structure(list(), class = c("collector_character",
"collector")), `Site 1` = structure(list(), class = c("collector_double",
"collector")), `Site 2` = structure(list(), class = c("collector_double",
"collector")), `Site 3` = structure(list(), class = c("collector_double",
"collector")), `Site 4` = structure(list(), class = c("collector_double",
"collector"))), default = structure(list(), class = c("collector_guess",
"collector")), skip = 1), class = "col_spec"))
(это упрощенная версия)
Существует ли способ быстрого преобразования подобной матрицы в длинный формат df ? Я посмотрел на некоторые из подобных вопросов, но варианты не сработали для меня. Все, что я хочу сделать, это получить df, который будет иметь 3 столбца: Site, Species и Abundance (который в настоящее время является значением в каждой ячейке матрицы).
Спасибо!