Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在r中查看类似列表的表格样式_R_List_Datatable_Formatting_R Markdown - Fatal编程技术网

如何在r中查看类似列表的表格样式

如何在r中查看类似列表的表格样式,r,list,datatable,formatting,r-markdown,R,List,Datatable,Formatting,R Markdown,我面临一个问题,即如何以表格(数据帧)格式以列表的形式表示数据,在列表中,每个元素都作为字符向量,这些向量可能具有不同的长度,示例列表如下: sample_list <- list("Matched x" = c("Ella", "Mila"), "Unmatched x" = c("Isla"), "Matched y" = c(), "Unmatched y" = c("Emma", "Olivia")) sample_list 是否有一种方法可以显示R标记(.Rmd文件)生成的文件

我面临一个问题,即如何以表格(数据帧)格式以列表的形式表示数据,在列表中,每个元素都作为字符向量,这些向量可能具有不同的长度,示例列表如下:

sample_list <- list("Matched x" = c("Ella", "Mila"), "Unmatched x" = c("Isla"), "Matched y" = c(), "Unmatched y" = c("Emma", "Olivia"))
sample_list
是否有一种方法可以显示
R标记
.Rmd
文件)生成的文件(例如
.html
/
.pdf
)的结果,如下所示(无需严格相同,但类似于表样式)?

我认为主要问题是以所需格式获取数据以显示表格。您可以在R-markdown文档中包括以下内容

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)

sample\u list这是一个tidyverse友好版:

library(dplyr)

max_len <- max(lengths(sample_list))

df <- purrr::map_df(sample_list, ~ c(., rep('', max_len - length(.))))

df %>% 
  flextable::flextable() %>% 
  flextable::autofit()
库(dplyr)
最大值%
flextable::autofit()

相关讨论-您好,最近的邮件,让我检查一下,谢谢,正确的解决方案,用空字符串填充统一的向量长度非常好,请投票!变量-
data.frame(lappy(样本列表,函数(x)c(x,rep('',最大长度(x))),check.names=FALSE)
library(dplyr)

max_len <- max(lengths(sample_list))

df <- purrr::map_df(sample_list, ~ c(., rep('', max_len - length(.))))

df %>% 
  flextable::flextable() %>% 
  flextable::autofit()