r - 基于平行向量的滤波向量
问题描述
假设我有两个向量:
x = c(1,2,3,4,5,6,7,8,9,10)
y = c(1,2,3,1,2,3,1,2,3,2)
我想生成一个新列表,其中包含 x 的所有元素,以便 y 中的相应元素满足条件。例如,假设我想要 x 中的所有元素,用 x[i] 表示,这样 y[i], = 2。所以在这种情况下,我希望新列表是 x' = [2,5,8,10]。
很明显如何通过蛮力慢慢地做到这一点,但我想知道在 R 中是否有一种快速和/或语法简洁的方法。
谢谢!
解决方案
x <- c(1,2,3,4,5,6,7,8,9,10)
y <- c(1,2,3,1,2,3,1,2,3,2)
z <- x[y == 2]
z
# [1] 2 5 8 10
推荐阅读
- node.js - 从视图目录中的文件夹路径和提供静态文件时出错
- python - xlmElementTree 重复项
- node.js - 一次将多行插入sqlite数据库
- sap-smart-forms - 不支持亚洲 2 字节字体添加字体文件时出错
- ethereum - 在 web3j 中创建钱包时如何解决异常?
- javascript - 使用 React 测试库在 React 中断言表单提交的 prop 调用
- spring-boot - 弹簧集成大连接处理
- docker-compose - 芹菜工人服务忽略经纪人网址
- python - 如何从他的评论中找到用户在 youtube 中的位置
- go - IBM Cloud - Cloud Foundry App Go 部署失败