Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R:找到向量中元素的位置_R_While Loop - Fatal编程技术网

R:找到向量中元素的位置

R:找到向量中元素的位置,r,while-loop,R,While Loop,我有一个带名字的向量: students <- c("Mykola", "Li", "Daniel", "Jan", "Lukas") 学生您可以使用哪个获得该职位: random_order <- function(students) { positon_jan = 0 positon_li = Inf while(positon_jan < positon_li

我有一个带名字的向量:

students <- c("Mykola", "Li", "Daniel", "Jan", "Lukas")

学生您可以使用
哪个
获得该职位:

random_order <- function(students)
{
  positon_jan = 0
  positon_li = Inf
  while(positon_jan < positon_li)
  {
    draw <- sample(students, 5)
    positon_jan <- which(draw == 'Jan')
    positon_li <- which(draw == 'Li')
  }
  return(draw)
}
random_order(students)
#[1] "Li"     "Jan"    "Daniel" "Mykola" "Lukas" 
random_order(students)
#[1] "Lukas"  "Daniel" "Mykola" "Li"     "Jan"   
random_order(students)
#[1] "Li"     "Daniel" "Mykola" "Lukas"  "Jan"   

random\u order您可以使用
which
获取位置:

random_order <- function(students)
{
  positon_jan = 0
  positon_li = Inf
  while(positon_jan < positon_li)
  {
    draw <- sample(students, 5)
    positon_jan <- which(draw == 'Jan')
    positon_li <- which(draw == 'Li')
  }
  return(draw)
}
random_order(students)
#[1] "Li"     "Jan"    "Daniel" "Mykola" "Lukas" 
random_order(students)
#[1] "Lukas"  "Daniel" "Mykola" "Li"     "Jan"   
random_order(students)
#[1] "Li"     "Daniel" "Mykola" "Lukas"  "Jan"   

随机订购谢谢!为什么开始时jan和Li的位置等于“0”和“Inf”?也就是说第一次初始化值,例如条件为
TRUE
0
给出
TRUE
,您也可以使用1和2,因为
1<2
也是
TRUE
。谢谢!为什么开始时jan和Li的位置等于“0”和“Inf”?也就是说第一次初始化值,例如条件为
TRUE
0
给出
TRUE
,您也可以使用1和2,因为
1<2
也是
TRUE