【问题标题】:R markdown: print selected entries of a data.table or matrix in colourR markdown:以颜色打印 data.table 或矩阵的选定条目
【发布时间】:2021-03-26 12:50:19
【问题描述】:

我有一个这样的 data.table:

my.data.table <- data.table(a = c(1,-2),
                            b = c(-3,4))

使用 R markdown to PDF (latex),我如何打印 my.data.table 以便所有负数都以红色打印,而正数和列标题保持黑色?矩阵的类似解决方案也可以。

【问题讨论】:

    标签: r matrix colors data.table r-markdown


    【解决方案1】:

    您可以按照official documentation 尝试kableExtra 解决方案:

    ---
    title: "kableExtra with cell_spec"
    author: "bttomio"
    date: "3/26/2021"
    output: pdf_document
    ---
    
    ```{r setup, include=FALSE}
    knitr::opts_chunk$set(echo = TRUE)
    library(kableExtra)
    library(data.table)
    ```
    
    # data.table
    
    ```{r echo=F}
    my.data.table <- data.table(a = c(1,-2),
                                b = c(-3,4))
    
    my.data.table$a <- cell_spec(my.data.table$a, 
                                color = ifelse(my.data.table$a>0, "black", "red"))
    
    my.data.table$b <- cell_spec(my.data.table$b, 
                                color = ifelse(my.data.table$b>0, "black", "red"))
    
    kbl(my.data.table, 'latex', booktabs = T, escape = F)
    ```
    
    # matrix
    
    ```{r echo=F}
    my.data.table <- matrix(c(1,-2,-3,4), nrow = 2,
                            dimnames = list(c("1", "2"), c("a", "b")))
    
    my.data.table[,1] <- cell_spec(my.data.table[,1], 
                                color = ifelse(my.data.table[,1]>0, "black", "red"))
    
    my.data.table[,2] <- cell_spec(my.data.table[,2], 
                                color = ifelse(my.data.table[,2]>0, "black", "red"))
    
    kbl(my.data.table, 'latex', booktabs = T, escape = F)
    ```
    

    -输出

    【讨论】:

    • 感谢您的回答!不幸的是,我收到了一些错误消息,目前没有时间进行调试。一旦我有时间,我会回到这个。
    猜你喜欢
    • 2015-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-14
    • 2015-08-18
    相关资源
    最近更新 更多