r - 将列中的值替换为向量值
问题描述
我有一个x
具有 3 个级别和 10 个值的向量,以及一个y
也具有 3 个级别但只有 3 个值的向量。
x <- c("A","A","A","A","B","B","C","C","C","C")
y <- c("Red","Blue","Green")
我想把A
s 从x
换成Red
in y[,1]
,然后把B
s从x
换成Blue
in ,y[,2]
最后一个也一样。
我想在使用该replace
功能作为
z <- replace(x, c("A","B", "C"), c("Red","Blue","Green"))
有任何想法吗?
解决方案
I think closest to what you want will be using dplyr::recode
:
x <- c("A","A","A","A","B","B","C","C","C","C")
map <- c(A = "Red", B = "Blue", C = "Green")
res <- dplyr::recode(x, !!!map)
or plyr::mapvalues
:
res <- plyr::mapvalues(
x,
from = c("A","B", "C"),
to = c("Red","Blue","Green")
)
推荐阅读
- reactjs - 如何随机化 qraphql 查询结果?
- android -
- 内部元素必须是资源引用或为空
- reactjs - ReactJS - 如何使用 React Router 创建具有单路径的多步组件/表单
- bash - 按顺序合并同名多部分pdf文件
- javascript - 如何在 React 中更改状态
- java - 我可以在倒计时结束时应用通知吗?
- sensors - 使用 esp8266 从 max30100 传感器发送数据到 thingspeak
- asp.net-core - ASP.NET Core 5 - 会话变量生命周期与 SignInManager.IsSignedIn(User)
- python-3.x - 多项式回归模型的曲线拟合在 Python 中给出了不正确的输出
- javascript - React - 数据更新时重新呈现图表 (Amcharts)