如何在向量中循环带有随机数字元素的向量,但同时希望保持相同的字符?
我在下面做了一个例子,但变量按顺序排列。我希望从序列中随机选择数字。
x <- as.list(seq(1,10))
y <- as.list(seq(1:50))
answer <- NULL
for(n in 1:length(x)){
answer <- paste("The value of", 1:length(y) , " + ", 1:length(x) , sep=" ")
}
answer
答案 0 :(得分:0)
我不确定我是否完全理解你的要求,但你可以试试这个:
x <- as.list(seq(1:10))
y <- as.list(seq(1:50))
set.seed(1234) # set seed for reproducibility
x1 <- unlist(sample(x,length(x))) # shuffle the entries of x in a random fashion and store in x1
y1 <- unlist(sample(y,length(y))) # do the same for the entries of y and store in y1
answer <- paste("The value of", y1 , " + ", x1 , sep=" ") # generate result
> head(answer)
#[1] "The value of 35 + 2" "The value of 27 + 6" "The value of 14 + 5" "The value of 44 + 8" "The value of 48 + 9" "The value of 38 + 4"
x1和y1的组合是随机的(如果你仔细观察结果,你会看到序列x1重复,因为矢量被循环使用,但y1的顺序是完全随机的)。 y1的每个值出现一次,但是,对(x1,y1)与原始有序集中的对(x,y)不同。这是否符合您想要的输出?