本文介绍了查找数字列表之间的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有两个数字列表,如下所示.
I have two list of numbers like below.
x <- c(1, 5, 10, 17, 21, 30)
y <- c(2, 7, 19)
在我的数据集中,x
将 1 到 30 划分为不同的段(从 1-5、5-10、10-17、17-21、21-30).是否可以将这些段与 y
中的数字匹配?(在这种情况下,我想将 c(1,5,17)
作为输出,因为 2 介于 1 和 5 之间,7 介于 5 和 10 之间,而 19 介于 17 之间和 21.)
In my dataset, x
divides 1 to 30 in different segments (from 1-5, 5-10, 10-17, 17-21, 21-30). Would it be possible to match these segments to numbers in y
? (In this case, I'd want to get c(1,5,17)
as an output because 2 is between 1 and 5, 7 is between 5 and 10, and 19 is in between 17 and 21.)
推荐答案
你可以用 sapply
和一个简单的函数来做到这一点
You can do this with sapply
and a simple function
sapply(y, function(a) x[max(which(x<a))])
[1] 1 5 17
这篇关于查找数字列表之间的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!