gpt4 book ai didi

r - 在 R 中使用 KableExtra 进行条件单元格格式化

转载 作者:行者123 更新时间:2023-12-02 16:08:17 25 4
gpt4 key购买 nike

我正在尝试使用 cell_spec 格式化列中的单元格在KableExtra图书馆。我的数据和代码如下所示:

df<-data.frame(Category=c("A","B","C","D"),Q1=c(46540.6541,4779.1654,798984.648,987454.144586),Q2=c(98742.06543,78993.0641,6418.016,48974.041684),QoQ=c("1.02%","8.05%","5.04","6.87"))
df$QoQ<-ifelse(
df$QoQ > 0.00,
cell_spec(df$QoQ, color = "green", bold = T),
cell_spec(df$QoQ, color = "red", bold = T))
kbl(df)

当我执行上面的代码时,表的 QoQ 列返回以下内容:<span style=" font-weight: bold; color: green !important;" >1.02%</span> .我怀疑这是因为我以数字方式过滤值,但我的数据类是字符。我的问题是,我能否保持数据原样,这意味着我在 QoQ 列中保留 % 符号,并且仍然编写一个条件语句,如果 QoQ 单元格大于 0.00%,则它为绿色,否则为红色?

最佳答案

我们可以将 parse_numberscales::percent 结合使用

library(readr)
library(dplyr)
library(scales)

df %>%
mutate(QoQ = parse_number(QoQ)) %>%
mutate(QoQ = scales::percent(QoQ))


df$QoQ<-ifelse(
df$QoQ > 0.00,
cell_spec(df$QoQ, color = "green", bold = T),
cell_spec(df$QoQ, color = "red", bold = T))

kbl(df, escape = FALSE) %>%
kable_styling

输出:

enter image description here

关于r - 在 R 中使用 KableExtra 进行条件单元格格式化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68749509/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com