2015-08-04 12 views
5

Próbuję opublikować tabelę z 1000 separatorów i nie mam z nią szczęścia. Połączyłem się z linkiem: Set global thousand separator on knitr, ale nie mam dużego sukcesu.R Marker tabeli 1000 separatora

Mój przykładowy zestaw danych jest tutaj: https://goo.gl/G7sZhr

Kod RMarkdown jest tutaj:

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

załadować dane

{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)

Jednak po uwzględnieniu tego fragmentu kodu (knit_hook $ set) w dokumencie RMarkdown otrzymuję błędy.

```{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) 
``` 

Błąd:

# object knit_hooks not found. 

Wszelkie spostrzeżenia na temat tego, co robię źle i jak to naprawić jest bardzo cenione.

Dzięki,

Krishnan

Odpowiedz

3

Co na temat korzystania pander z bandą opcji, aby dostroić swój 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 
---------------------------- 
+0

Dzięki za wgląd. To zadziałało. – Krishnan

2

Powodem że knit_hooks obiekt nie jest stwierdzone jest, że albo należy załadować pakiet knitr lub użyć prefiksu knitr:: w celu ustawienia opcji knit_hooks. Na przykład:

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

Najłatwiej jest użyć argumentów format samej funkcji kable(), gdzie można określić wielki znak numeryczny tak:

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

Więc Przykładem może wyglądać następująco:

```{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 = ",")) 
``` 

bez potrzeby stosowania haków z dzianiny.