Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.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-knitr::kable(";html)-名称(列表)中的列名称_R_Knitr_Blogdown_Kable - Fatal编程技术网

R-knitr::kable(";html)-名称(列表)中的列名称

R-knitr::kable(";html)-名称(列表)中的列名称,r,knitr,blogdown,kable,R,Knitr,Blogdown,Kable,我正在RStudio写一篇博客文章。在某一点上,chunks输出是一个带有命名数字向量的命名列表,其结构如下: object <- list("Name One" = c("A" = 1, "B" = 1), "Name two" = c("C" = 2, "D" = 2)) 在漂亮的HTML表中呈现输出。本例中呈现的列名称应为“Name One”和“Name Two” 当然,采用col.names=names(object)的方式将是完美的 这是我收到的错误消息: Error in d

我正在RStudio写一篇博客文章。在某一点上,chunks输出是一个带有命名数字向量的命名列表,其结构如下:

object <- list("Name One" = c("A" = 1, "B" = 1), "Name two" = c("C" = 2, "D" = 2))
在漂亮的HTML表中呈现输出。本例中呈现的
列名称
应为
“Name One”
“Name Two”

当然,采用
col.names=names(object)
的方式将是完美的

这是我收到的错误消息:

Error in dimnames(x) <- dn : length of 'dimnames' [2] not equal to array extent

所以我猜你想要一张像这样的桌子(如果不是的话,请随意说)


名字一
名字二
A.
1.
B
2.

我喜欢上面Emi的解决方案,还有另外两个在网页上呈现得很好的选项,包括我最喜欢的
DT
软件包中的一个(还有更多选项--这个选项上有很多空白):

下面是flextable中的另一个:

library(flextable)
data.frame(as.vector(object)) %>% 
    regulartable() %>% set_header_labels(names(object))

我不太明白您想要的最终输出是什么。为什么不将列表转换为所需格式的data.frame?谢谢您的提示。我刚刚更新了我的帖子,使我的目标更加明确。下面的区块可在.Rmd中复制
<tr>
  <th style="text-align:left;">   </th>
  <th style="text-align:right;"> x </th>
</tr>
<tr>
  <td style="text-align:left;"> A </td>
  <td style="text-align:right;"> 1 </td>
</tr>
<tr>
  <td style="text-align:left;"> B </td>
  <td style="text-align:right;"> 1 </td>
</tr>
object <- list("Name One" = c("A" = 1, "B" = 1), "Name two" = c("C" = 2, "D" = 2))
# cf. names(object)
object %>% 
    knitr::kable("html", col.names = names(object))
library(DT)
data.frame(as.vector(object)) %>% 
    datatable(options=list(dom='t'),colnames=names(object))
library(flextable)
data.frame(as.vector(object)) %>% 
    regulartable() %>% set_header_labels(names(object))