一部の列に特定のコンテンツがある場合、Rデータフレームの1つの列を変更しようとしています(ただし、正確なコンテンツではなく、正規表現で見つけたコンテンツ)。
例えば:
df:
Name City Age
Peter Fort Wayne 15
John South Bend 20
Christopher Boston 25
Andy Boston 30
Johnathan Los Angeles 35
さて、名前がJohnで始まるすべての人の年齢を変更したい場合は、通常、次のように選択します。
subset(df, grepl("^John", Name))
それは私に与えるだろう
Name City Age
John South Bend 20
Johnathan Los Angeles 35
しかし、どうやら私はそれを使用して変更することはできません
subset(df, grepl("^John", Name))$Age <- 20
これを行う簡単な方法はありますか?データフレームから行を削除してから再挿入するのは嫌です。これは、これまで行ってきたことです。
助けてくれてありがとう、オリバー