r - R:根据另一个表替换一个表中的值
问题描述
假设我有一个 TableA:
Code Description
001 Apple
002 Banana
我也有表B:
Description
001
002
003
我想用 TableA 描述中的值替换 TableB 描述中的值。
我知道我可以做一个简单的加入。但是,我想替换值。我怎样才能做到这一点?
我可能的解决方案如下,但它不能正常工作:
TableB$Description <- TableA[TableA$Code %in% TableB$Description, Description]
解决方案
这可能是一个合并/加入操作,
merge(TableB, TableA, by.x = "Description", by.y = "Code", all.x = TRUE)
# Description Description.y
# 1 1 Apple
# 2 2 Banana
# 3 3 <NA>
(有关合并/连接的更多信息,请参阅如何连接(合并)数据帧(内、外、左、右)和INNER JOIN、LEFT JOIN、RIGHT JOIN 和 FULL JOIN 有什么区别?)
或者它可以是一个简单的查找使用match
:
TableA$Description[ match(TableB$Description, TableA$Code) ]
# [1] "Apple" "Banana" NA
推荐阅读
- c - pow() 有时有时在 gcc 中找不到 w/o -lm 开关
- r - SAS proc 表示 R 中的等价物
- java - 通过保留现有规则向单例 KieContainer 添加新规则
- jquery - jQuery在滚动之前获取滚动位置以在全屏时使用scrollTop()位置临时禁用滚动
- django - 在 Django 中,如何重命名用户模型?
- r - 计算每行超过 60 的值的数量
- firebase - FIRESTORE :具有多个 where 子句的查询流
- json - Flutter/Dart Json 序列化
- javascript - 谷歌脚本/html试图在页面内显示页面
- reactjs - 在地图上查看城市名称