[英]Replacing multiple strings with multiple strings in same column?
我正在尝试替换字符串(列)中的多个模式。 我遇到的问题是使用 str_replace。 我列出了字符串、要替换的模式和替换,它与 1 一起使用,但我似乎无法弄清楚如何替换字符串中的多个模式 (3)。 每个预期的模式都有一个特定的替换。
我要替换的三种模式以字母 P、N 或 G 开头,我想将它们替换为 Positive、Negative、General。
到目前为止我所拥有的是:
spreadsheet.dat1<-spreadsheet.dat %>%
mutate(domain=str_replace(column, "^P.*", "Positive"))
spreadsheet.dat2<-spreadsheet.dat1 %>%
mutate(domain=str_replace(column, "^N.*", "Negative"))
spreadsheet.dat3<-spreadsheet.dat2 %>%
mutate(domain=str_replace(column, "^P.*", "General"))
我希望它会累积添加到新的列域中,正面、负面、一般都被 spreadsheet.dat3 替换,但它只替换当前的 function。
有小费吗?
如果您提供一个小的示例数据集,然后提供一个您希望将其变成的示例,将会有所帮助。 我想你要找的是
spreadsheet.dat1<-spreadsheet.dat %>%
mutate(domain=case_when(str_starts(column, "P") ~ "Positive",
str_starts(column, "N") ~ "Negative",
str_starts(column, "G") ~ "General",
TRUE ~ NA_character_))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.