首页 > 解决方案 > 从向量中查找可被两个数整除的元素

问题描述

我想从可被 x 或 Y 整除的向量中提取所有元素再次,我想从可被 x 和 Y 整除的向量中提取所有元素。实际上我想提取除以 5 或 7 的元素,在一个向量中,5 和 7 在另一个向量中。Y<- X[X %% 5 == 0];Y, Y<- X[X %% 7 == 0];Y,它是单独工作的。

标签: r

解决方案


x 我们可以编写一个函数来返回可被AND yx OR 整除的元素列表y

get_all_elements <- function(vec, x, y) {
   list(OR = vec[vec %% x == 0 | vec %% y == 0], 
        AND = vec[vec %% x == 0 & vec %% y == 0])
}

output <- get_all_elements(1:100, 5, 7)
output

#$OR
# [1] 5   7  10  14  15  20  21  25  28  30  35  40  42  45  49  50  55  56  60  63  
#     65  70  75  77  80 84  85  90  91  95  98 100

#$AND
#[1] 35 70

get_all_elements(1:100, 7, 9)
#$OR
# [1]  7  9 14 18 21 27 28 35 36 42 45 49 54 56 63 70 72 77 81 84 90 91 98 99

#$AND
#[1] 63

如果需要output$OR和 ,您可以分别提取两个向量output$AND


推荐阅读