我正试着用R来生成报告并且认为我已经决定只使用 pander ,之后将自己与 knitr , Rmarkdown , pander 和报告。
我现在有两个文件:
'ReportIntro.brew',其中包含报告的结构
# My Report Title
## Sample Information
#### <%=set.alignment('left') ; as.character(info[1,1])%>
<%=set.alignment('left') ; info[2:8,1:2]%>
'Report.R'创建报告所需的data.frame'info'
library(pander) ; library(xlsx)
info=read.xlsx(file="info.xlsx", sheetName="info", header=FALSE)
Pandoc.brew(file="ReportIntro.brew", output=tempfile(), convert="docx")
这给了我第一个带有表格的Word文档。但是,它包含不需要的行名和列名。 我找到了一个关于generating tables with pander and knitr的博客,建议设置
row.names(info) <- NULL
但这没有效果。
如果我尝试使用
print(info[2:8,1:2], include.rownames=FALSE)
或
print(xtable(info[2:8,1:2]), type="html", include.rownames=FALSE)
正如另一篇关于removing row names using xtable的帖子所建议的那样,该表格在Word文档中根本没有出现。
那么:如何在不显示行名的情况下获取表格?
(这是我的第一篇文章,所以我希望它符合要求!)
编辑: 这是dput(info)的结果
> dput(info)
structure(list(X1 = c("School Information", "Name", "Type", "DfE number",
"URN", "DfE link", "Dashboard Report", "Ofsted link", "Test Information",
"Test Date", "Comments", "Analysis comments", "Sample Size",
"Year group", "All", "11", "11"), X2 = c(NA, NA, "Primary, Academy, Prep, Middle etc",
NA, "Enter school URN here", "http://www.education.gov.uk/",
"http://dashboard.ofsted.gov.uk/", "http://www.ofsted.gov.uk",
NA, NA, NA, NA, NA, "Set", "All", "top", "middle"), X3 = c(NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "M", "408", "165",
"243"), X4 = c(NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, "F", "402", "145", "257"), X5 = c(NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, "Total", "810", "310", "500")), .Names = c("X1",
"X2", "X3", "X4", "X5"), row.names = c(NA, 17L), class = "data.frame")
答案 0 :(得分:7)
我是pander
的作者,感谢你试试看,@ Jerubaal。如果您也可以发布info
或更确切地说dput(info)
的结果,那将是非常棒的,以便我可以重现您的步骤,但据我现在看到的解决方法是首先保存该子集info
进入一个新变量,然后将该新对象返回到一个块中。
更多详细信息:pander
如果这些是微不足道的话,请{@ 1}},例如从row.names
到行数的序列。如果您返回1
的子集,则会返回不符合此基本计划的data.frame
对象。但是,如果您创建新的row.names
,自动data.frame
将从row.names
开始到1
。
快速演示(请注意,nrow
会自动在每个块上运行):
pander
> library(pander)
> pander(iris[2:3, 1:3])
---------------------------------------------------
Sepal.Length Sepal.Width Petal.Length
------- -------------- ------------- --------------
**2** 4.9 3 1.4
**3** 4.7 3.2 1.3
---------------------------------------------------
> x <- iris[2:3, 1:3]
> pander(x)
---------------------------------------------------
Sepal.Length Sepal.Width Petal.Length
------- -------------- ------------- --------------
**2** 4.9 3 1.4
**3** 4.7 3.2 1.3
---------------------------------------------------
> row.names(x) <- NULL
> pander(x)
-------------------------------------------
Sepal.Length Sepal.Width Petal.Length
-------------- ------------- --------------
4.9 3 1.4
4.7 3.2 1.3
-------------------------------------------
数据集 更新:demo
info