如何在带有括号的数字的html / RMarkdown中正确呈现表格

时间:2019-11-04 13:21:08

标签: r r-markdown knitr

对于小于1000的值,使用以下代码呈现的表无法正确显示。大于1,000的值看起来像这样:(1,234),这是我所期望的,而小于1,000的值看起来像这样:999.

---
title: "Untitled"
output: html_document
---

```{r setup}
knitr::opts_chunk$set(echo = TRUE)
library(knitr)
library(kableExtra)
dt <- data.frame(stringsAsFactors=FALSE,
                 test = c("a", "b", "c"),
                 header1 = c("(1,234)", "(999)", "(4,543)"),
                 header.2 = c("(1,674)", "(123)", "(4,423)"))
dt %>%
  kable("html") %>%
  kable_styling()
```

有简单的解决方法吗?保持括号是可取的。

> sessioninfo::session_info()
- Session info -----------------------------------------------------------------------------------------------------------------------
 setting  value                       
 version  R version 3.6.1 (2019-07-05)
 os       Windows 10 x64              
 system   x86_64, mingw32             
 ui       RStudio                     
 language (EN)                        
 collate  English_United Kingdom.1252 
 ctype    English_United Kingdom.1252 
 tz       Europe/London               
 date     2019-11-04                  

- Packages ---------------------------------------------------------------------------------------------------------------------------
 package     * version date       lib source        
 assertthat    0.2.1   2019-03-21 [1] CRAN (R 3.6.0)
 cli           1.1.0   2019-03-19 [1] CRAN (R 3.6.0)
 crayon        1.3.4   2017-09-16 [1] CRAN (R 3.6.0)
 rstudioapi    0.10    2019-03-19 [1] CRAN (R 3.6.0)
 sessioninfo   1.1.1   2018-11-05 [1] CRAN (R 3.6.0)
 withr         2.1.2   2018-03-15 [1] CRAN (R 3.6.0)

[1] C:/Users/***********/Documents/R/R-3.6.1/library
> sessioninfo::session_info()
- Session info -----------------------------------------------------------------------------------------------------------------------
 setting  value                       
 version  R version 3.6.1 (2019-07-05)
 os       Windows 10 x64              
 system   x86_64, mingw32             
 ui       RStudio                     
 language (EN)                        
 collate  English_United Kingdom.1252 
 ctype    English_United Kingdom.1252 
 tz       Europe/London               
 date     2019-11-04                  

- Packages ---------------------------------------------------------------------------------------------------------------------------
 package     * version date       lib source        
 assertthat    0.2.1   2019-03-21 [1] CRAN (R 3.6.0)
 cli           1.1.0   2019-03-19 [1] CRAN (R 3.6.0)
 crayon        1.3.4   2017-09-16 [1] CRAN (R 3.6.0)
 digest        0.6.22  2019-10-21 [1] CRAN (R 3.6.1)
 evaluate      0.14    2019-05-28 [1] CRAN (R 3.6.0)
 htmltools     0.3.6   2017-04-28 [1] CRAN (R 3.6.0)
 knitr         1.25    2019-09-18 [1] CRAN (R 3.6.1)
 Rcpp          1.0.2   2019-07-25 [1] CRAN (R 3.6.1)
 rmarkdown     1.15    2019-08-21 [1] CRAN (R 3.6.1)
 rsconnect     0.8.15  2019-07-22 [1] CRAN (R 3.6.1)
 rstudioapi    0.10    2019-03-19 [1] CRAN (R 3.6.0)
 sessioninfo   1.1.1   2018-11-05 [1] CRAN (R 3.6.0)
 withr         2.1.2   2018-03-15 [1] CRAN (R 3.6.0)
 xfun          0.9     2019-08-21 [1] CRAN (R 3.6.1)
 yaml          2.2.0   2018-07-25 [1] CRAN (R 3.6.0)

1 个答案:

答案 0 :(得分:1)

您似乎需要“转义” \\引起问题的值。

---
title: "Untitled"
output: html_document
---

```{r setup}
knitr::opts_chunk$set(echo = TRUE)
library(knitr)
library(kableExtra)
dt <- data.frame(stringsAsFactors=FALSE,
                 test = c("a", "b", "c"),
                 header1 = c("(1,234)", "\\(999)", "(4,543)"),
                 header.2 = c("(1,674)", "\\(123)", "(4,423)"))
dt %>%
  kable("html") %>% 
  kable_styling()
```