category.1 <- c("TM","TM","CPA","TM","CPC")
category.2 <- c("LS","LS","DSP","DSP","AF")
platform <- c("facebook","facebook","yahoo","google","google")
dat <- data.frame(platform,category.1,category.2)
dat
platform category.1 category.2
1 facebook TM LS
2 facebook TM LS
3 yahoo CPA DSP
4 google TM DSP
5 google CPC AF
当category.1是'TM'和category.2'LS'时,我想将'LS'替换为'LS1'
platform category.1 category.2
1 facebook TM LS1
2 facebook TM LS1
3 yahoo CPA DSP
4 google TM DSP
5 google CPC AF
我尝试过这种方式,它的返回错误。
dat$category.1[dat$category.1=='TM'& dat$category.2=='LS',] <- 'LS1'
感谢您的阅读。
最佳答案
另一种方法;使用dplyr
和ifelse
基本函数。
> library(dplyr)
> dat <-
dat %>%
mutate(category.2 = ifelse(category.1 == "TM" & category.2 == "LS",
"LS1",
as.character(category.2)))
> dat
platform category.1 category.2
1 facebook TM LS1
2 facebook TM LS1
3 yahoo CPA DSP
4 google TM DSP
5 google CPC AF
关于r - 如何替换数据框中的特定单词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29095101/