R、 Latex和RMarkdown:xtable()的table()输入缺少列和行标签



我正试图创建一个漂亮的LaTeX表,在使用xtable库时,该表中包含了表的行和列变量的名称。

MWE:

```{r results="asis"}
test <- data.frame(Apples=c(1,2,3), Oranges=c(4,5,6), Watermelons=c(7,8,9))
testxtab <- xtable(with(test,table(Apples,Oranges)))
print(testxtab, comment=FALSE)
```

结果是一个缺少"苹果"one_answers"橙子"标签的LaTeX表。如何将它们包括在内?

我相信您可以将其调整为xtable,但这里有一种方法可以使用pixiedust。(这不是一个非常优雅的解决方案,但考虑到table对象的结构,我不确定优雅是否是一个选项)。

library(pixiedust)
obj <- with(test, table(Apples, Oranges))
dimnames <- names(attr(obj, "dimnames"))
head <- 
  rbind(c("", dimnames[2], rep("", ncol(obj) - 1)),
        c(dimnames[1], colnames(obj))) %>%
  as.data.frame(stringsAsFactors = FALSE)
body <- cbind(rownames(obj), obj) %>%
  as.data.frame(stringsAsFactor = FALSE)
dust(body) %>%
  redust(head, part = "head") %>%
  sprinkle(rows = 1,
           cols = 2:4,
           merge = TRUE,
           part = "head") %>%
  medley_bw() %>%
  sprinkle_print_method("latex")

相关内容

最新更新