我有一个基本问题,要根据参考更新某些行中的值。我确定有人也提出了类似的问题,但我找不到确切的答案。以下是我的问题的描述。如果有人可以在此处建议答案的链接或提供解决方案,那就太好了。先感谢您。
我有一个超过10,000行的表,像这样:
Quality City
a1 pending NY
a2 pending LA
a3 pending LA
a4 pending SF
a5 pending SF
a6 pending NY
a7 pending Chicago
...
a10000 pending DC
我想根据引用的子集更新“质量”列中的名称,如下所示:
Quality City
a1 bad NY
a3 good LA
a5 good SF
a6 bad NY
...
a200 good Chicago
这是我要寻找的结果:
Quality City
a1 bad NY
a2 pending LA
a3 good LA
a4 pending SF
a5 good SF
a6 bad NY
a7 pending Chicago
...
a200 good Chicago
...
a10000 pending DC
我们可以先执行full_join
,然后再coalesce
执行质量列:
library(tidyverse)
df1 %>%
rownames_to_column("id") %>%
full_join(rownames_to_column(df2, "id"), by=c("id", "City")) %>%
mutate(Quality = coalesce(Quality.y, Quality.x), Quality.x = NULL, Quality.y = NULL)
id City Quality
1 a1 NY bad
2 a2 LA pending
3 a3 LA good
4 a4 SF pending
5 a5 SF good
6 a6 NY bad
7 a7 Chicago pending
8 a10000 DC pending
9 a200 Chicago good
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句