R: Использование образца, когда количество элементов на выбор может быть 1 или больше, чем один - PullRequest
0 голосов
/ 03 июня 2019

В R функция sample выбирает элемент из списка, если длина больше единицы, или принимает элемент от 1 до n, если есть только один элемент (n).

Это двойное поведение является проблемой для меня, потому что, скажем, у меня есть следующий код (я пытался упростить его):

sample(sample(10:20,sample(5,1)),1)

Когда sample(5,1) равно 1, я получаю только один номер, в противном случае я получаю больше одного. И мне нужно просто указать, что я хочу выбрать одно из чисел, заданных sample(10:20,sample(5,1)) (или единственное, если есть только один).

Теперь я мог бы избежать этого с помощью if:

a<-sample(10:20,sample(5,1))
if(length(a)>1){
  sample(a)
} else {a}

Но это усложняется, и от этого зависит гораздо больше "семплов", и это было бы очень грязно.

Поэтому мне интересно, есть ли какая-либо функция или аргумент sample, который выбирает единственное число, которое дается, если есть только один.

Спасибо

...