You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在R语言中匹配向量:根据v1的值替换v2元素的方法

R语言向量匹配替换实现方案

向量定义

先定义题目中的三个向量:

v1 <- c(1,0,0,1,0)
v2 <- c(3,5,7,8,6)
v3 <- c(7,6,4,2,1)

实现方法

方法1:逻辑索引替换(直观易懂)

先复制v2到新向量,再针对v1为1的位置替换为v3对应值:

new_v2 <- v2
# 定位v1中值为1的位置,替换new_v2对应元素
new_v2[v1 == 1] <- v3[v1 == 1]

方法2:ifelse函数一行实现(简洁高效)

利用ifelse函数的条件判断特性,直接生成目标向量:

new_v2 <- ifelse(v1 == 1, v3, v2)

验证结果

运行上述任意一种方法后,打印new_v2即可得到预期结果:

new_v2
# 输出:
# [1] 7 5 7 2 6

内容的提问来源于stack exchange,提问作者manu p

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 17:15:47