下記のためにコード化された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
私の最初の試みは、次のようなa for
およびif
ステートメントを使用することでした:
for(i in junk$nm) if(i %in% "B") junk$nm <- "b"
ご覧のとおり、これでのすべての値がに置き換えjunk$nm
られb
ます。これがなぜこれを行っているのかはわかりますが、元の値があったjunk $ nmのケースのみを置き換えるようには思えませんB
。
注:私は何とか問題を解決できましたgsub
が、RIを学ぶために、元のアプローチを機能させる方法を知りたいと思っています(可能な場合)。