здесь false) вы можете использовать replace:
ре данных R, закодированном ниже, я хотел бы заменить всеB
появляется сb
.
junk <- data.frame(x <- rep(LETTERS[1:4], 3), y <- letters[1:12])
colnames(junk) <- c("nm", "val")
это обеспечивает:
nm val
1 A a
2 B b
3 C c
4 D d
5 A e
6 B f
7 C g
8 D h
9 A i
10 B j
11 C k
12 D l
Моя первая попытка состояла в том, чтобы использоватьfor
а такжеif
заявления вроде так:
for(i in junk$nm) if(i %in% "B") junk$nm <- "b"
но, как я уверен, вы можете видеть, это заменяет ВСЕ значенияjunk$nm
с участиемb
, Я могу понять, почему это происходит, но я не могу заставить его заменить только те случаи с мусором $ nm, где исходное значение былоB
.
ПРИМЕЧАНИЕ: мне удалось решить проблему сgsub
но в интересах изучения R я все еще хотел бы знать, как получить мой оригинальный подход к работе (если это возможно)