R Markdown Table 1000 分隔符

R Markdown Table 1000 separator

我正在尝试发布带有 1000 个分隔符的 table,但我没有任何运气。我在这里关注 link:Set global thousand separator on knitr 但没有取得多大成功。

我的样本数据集在这里:https://goo.gl/G7sZhr

RMarkdown 代码在这里:

---
title: "Table Example"
author: "Krishnan Viswanathan"
date: "August 4, 2015"
output: html_document
---

加载数据

{r, results='asis', message = FALSE, tidy=TRUE} load("i75_from_flow.RData") library(data.table)

{r, results='asis', echo=FALSE,message = FALSE, tidy=TRUE} i75_from_flow <- i75_from_flow[order(-Tons),] knitr::kable(i75_from_flow)

但是,当我在 RMarkdown 文档中包含这段代码 (knit_hook$set) 时,出现错误。

```{r, results='asis', echo=FALSE,message = FALSE, tidy=TRUE}
i75_from_flow <- i75_from_flow[order(-Tons),]
knit_hooks$set(inline = function(x) {
prettyNum(x, big.mark=",")
})
knitr::kable(i75_from_flow)
```

错误:

# object knit_hooks not found.

非常感谢任何关于我做错了什么以及如何解决这个问题的见解。

谢谢,

克里希南

如何使用 pander 和大量选项来微调您的 markdown table:

> pander::pander(i75_from_flow, big.mark = ',')

----------------------------
 ORIGFIPS   TERMFIPS   Tons 
---------- ---------- ------
  12,023     12,117   5,891 

  12,119     12,105   4,959 

  12,001     12,057   3,585 

  12,001     12,113   3,083 

  12,047     12,047   1,517 
----------------------------

找不到knit_hooks对象的原因是您要么需要加载knitr包,要么使用knitr::前缀来设置knit_hooks 选项。例如:

knitr::knit_hooks$set(inline = function(x) {
prettyNum(x, big.mark=",")
})

最简单的方法是使用 kable() 函数本身的格式参数,您可以在其中指定大数字标记,如下所示:

kable(df, format.args = list(big.mark = ","))

因此您的示例如下所示:

```{r, results='asis', echo=FALSE,message = FALSE, tidy=TRUE}

i75_from_flow <- i75_from_flow[order(-Tons),]
knitr::kable(i75_from_flow, format.args = list(big.mark = ","))
```

不需要编织钩。