将 R 表格导出为 HTML

29

有没有一种简单的方法将 R 中的表格导出到一个简单的 HTML 页面上?

5个回答

26

xtable包中的xtable函数可以将R表格导出为HTML表格。这篇博客文章介绍了如何从Sweave文档创建HTML页面。


10
“print(xtable(tb), type = "html")”需要精细打印,格式为“HTML”。感谢提供链接! - aL3xa
@DavidB 根据其他人的评论,你可以使用以下代码 print(xtable(tb), type = "html", file = 'myfile.html'),在这里你可以在你的工作目录中找到导出的文件。 - Mohamed Rahouma

20

值得一提的是,现有一个新的软件包专门设计用于将数据框(或表格)转换为HTML表格并使用CSS进行样式设置,操作简单易懂。它被称为tableHTML。您可以在下面看到一个简单的示例:

library(tableHTML)
#create an html table 
tableHTML(mtcars)

#and to export in a file
write_tableHTML(tableHTML(mtcars), file = 'myfile.html')

您也可以在这里看到详细的教程。


13

1

表格包gt的语法也是一种选择。

以下是文档中生成HTML表格的示例

library(gt)

tab_html <-
  gtcars %>%
  dplyr::select(mfr, model, msrp) %>%
  dplyr::slice(1:5) %>%
  gt() %>%
  tab_header(
    title = md("Data listing from **gtcars**"),
    subtitle = md("`gtcars` is an R dataset")
  ) %>%
  as_raw_html()

0

在DT包的一个问题中,有人发布了如何使用DT包获取表格中的HTML的方法。我已经粘贴了相关的示例代码,并将其修改为引用所有列:targets =“_all”

library(DT)

render <- c(
  "function(data, type, row){",
  "  if(type === 'sort'){",
  "    var parser = new DOMParser();",
  "    var doc = parser.parseFromString(data, 'text/html');",
  "    data = doc.querySelector('a').innerText;",
  "  }",
  "  return data;",
  "}"
)

dat <- data.frame(
  a = c("AAA", "BBB", "CCC"), 
  b = c(
    '<a href="#" id = "Z" onclick = "Ztest">aaaaa</a>', 
    '<a href="#" id = "A" onclick = "Atest">bbbbb</a>',
    '<a href="#" id = "J" onclick = "Jtest">jjjjj</a>'
  )
)

datatable(
  dat, 
  escape = FALSE,
  options = list(
    columnDefs = list(
      list(targets = "_all", render = JS(render))
    )
  )
)

希望这能有所帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接