如果某列具有特定内容(但是,不是确切的内容,而是我使用正则表达式找到的内容),我正在尝试更改 R 数据框中的一列。
例如:
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
是否有捷径可寻?我不想从数据框中删除行然后重新插入它们,这就是我迄今为止一直在做的事情。
谢谢你的帮助,奥利弗