Как просмотреть список как стиль таблицы в r

Я сталкиваюсь с проблемой, касающейся представления данных в виде списка в виде таблицы (фрейма данных), в списке каждого элемента в виде символьного вектора, и эти векторы могут иметь разную длину, пример списка приведен ниже:

sample_list <- list("Matched x" = c("Ella", "Mila"), "Unmatched x" = c("Isla"), "Matched y" = c(), "Unmatched y" = c("Emma", "Olivia"))
sample_list

Обычно, если вы используете str(sample_list) , он будет печататься как показано ниже:

> str(sample_list)
List of 4
 $ Matched x  : chr [1:2] "Ella" "Mila"
 $ Unmatched x: chr "Isla"
 $ Matched y  : NULL
 $ Unmatched y: chr [1:2] "Emma" "Olivia"

Есть ли способ показать результат на сгенерированном файле .Rmd R markdown (файл .Rmd ) (например, .html / .pdf ), как .Rmd ниже ( не нужно строго такой же, как стиль таблицы )?
введите описание изображения здесь

Всего 1 ответ


Я думаю, что основной проблемой является получение данных в необходимом формате для отображения таблицы. Вы можете включить следующее в документ R-уценки.

sample_list <- list("Matched x" = c("Ella", "Mila"), "Unmatched x" = c("Isla"), 
               "Matched y" = c(), "Unmatched y" = c("Emma", "Olivia"))

max_len <- max(lengths(sample_list))
df <- do.call(cbind.data.frame, c(lapply(sample_list, function(x) 
               c(x, rep('', max_len - length(x)))), stringsAsFactors = FALSE))
knitr::kable(df)

введите описание изображения здесь


Есть идеи?

10000