如何在R语言中为数据框ID列批量添加<b>HTML标签
解决方法
你的问题出在用错了函数:gsub是用来替换字符串中匹配到的内容,而你代码里是想用</b>替换<b>,但原始ID里根本没有<b>,所以完全起不到拼接标签的作用。
给你两种简单的正确写法:
方法1:用基础R的paste0
直接把前缀、原始ID、后缀拼接起来,这是最直接的方式,会自动应用到列的每一个元素:
df$id <- paste0('<b>', df$id, '</b>')
方法2:用stringr包的str_c(适合tidyverse用户)
如果你习惯用tidyverse生态的工具,stringr::str_c的用法和paste0一致,语法更清晰:
library(stringr) df$id <- str_c('<b>', df$id, '</b>')
测试示例
比如你有这样的测试数据:
df <- data.frame(id = c('890G-', '09K67', '673N'))
运行上面的代码后,df$id就会变成:
[1] "<b>890G-</b>" "<b>09K67</b>" "<b>673N</b>"
完全符合你想要的格式。
内容的提问来源于stack exchange,提问作者Ranji Raj
相关产品推荐
相关产品推荐

