我有三个向量a, r and b
。我想检查r的第一个元素是否在向量a
的零和第一个元素之间,如果是,则从向量b
中取零,如果不是,则它属于什么区间,然后提取值表单vector b
,...我怎么能在R中做到这一点?最后我应该有一个带有样本20的向量,这些值属于向量b
。
a =c(0.1531532, 0.2432432, 0.3243243, 0.3648649, 0.3873874, 0.4054054,
0.4594595, 0.5720721, 0.7522523, 1.0000000)
set.seed(2)
r = runif(20, 0, 1)
b = 0:9
result = c( 1, 8, 8, 1, 9, 9, 0, 9, 7, 7, 7, 1, 9, 1, 5, 9, 9, 1, 6, 0)
答案 0 :(得分:2)
R> a = c(0, a)
R> cut(r, a, labels = b)
[1] 1 8 8 1 9 9 0 9 7 7 7 1 9 1 5 9 9 1 6 0
Levels: 0 1 2 3 4 5 6 7 8 9