R 可根据条件向列添加前缀

问题描述 投票:0回答:1

我有一个包含两列的数据框:

Condition
Value
。 基于这个数据框,我想创建一个可反应的对象。
Value
列应该有一个前缀。 如果
Condition
列为 TRUE,则应在其前面添加“检查”。 不幸的是,我想不出在以下代码中包含条件的解决方案。

library(reactable)

df <- data.frame(
  Condition = c(TRUE, FALSE, TRUE, FALSE),
  Value = c(100, 200, 300, 400)
)

reactable(
  df,
  columns = list(
    Value = colDef(format = colFormat(prefix = "Check"))
  )
)

这是所需的输出:
enter image description here

r conditional-formatting reactable
1个回答
0
投票

您可以这样做(另请参阅文档中的

R
渲染函数):

library(reactable)

df <- data.frame(
  Condition = c(TRUE, FALSE, TRUE, FALSE),
  Value = c(100, 200, 300, 400)
)

reactable(
  df,
  columns = list(
    Value = colDef(
      cell = function(value, index, name) {
        htmltools::div(
          paste0(if (df$Condition[index]) {"Check "} else "", value)
        )
      }
    )
  )
)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.