这就是我想要的

下面是我在Clemens帖子后面的代码
library(magrittr)
sample1$sentence %<>%
stringr::str_replace_all(c('red' = '<span style="background- color:blue">red</span>'))
sample1 %>%
tableHTML()有人能帮帮忙吗?谢谢。
发布于 2018-08-14 21:14:22
使用的包:
library(dplyr)
library(tableHTML)示例数据:
sample1 <- data.frame(words = c("interested", "red", "black"),
sentence = c("I am very interested in this topic",
"Multiple color: red, blue, black",
"multiple color: red, blue, black"),
stringsAsFactors = FALSE)创建一个列表来存储单词和要应用于它们的颜色:
word_colour <- list(interested = "red",
red = "blue",
black = "purple")下面的函数使用word_colour,查找句子中的单词,并在其周围添加一个带有内联CSS的span,用于更改字体颜色。
replace_word <- function(word_colour, df) {
word <- df$words
sentence <- df$sentence
stringr::str_replace(string = sentence,
pattern = word,
replacement = paste0('<span style="color:',
word_colour[[word]],
'">',
word,
'</span>'))
}然后,您可以将所有这些链接在一起。重要提示:rowwise允许您逐行浏览数据。do()被用作通用操作函数。
sample1 %>%
rowwise %>%
do({
df = as_data_frame(.)
df$sentence = replace_word(word_colour, df)
df
}) %>%
tableHTML(rownames = FALSE,
escape = FALSE)结果是:

https://stackoverflow.com/questions/51835967
复制相似问题