У меня есть два вектора, которые могут быть переменной длины.Я хочу ограничить, как я выбираю из одного, используя длину меньшего.В этом случае xy
меньше, поэтому первая часть должна выполняться, а вторая должна игнорироваться, но когда я запускаю код, я получаю ошибку:
Ошибка в sample.int (length (x), size, replace, prob): нельзя взять выборку, большую, чем совокупность, когда 'replace = FALSE'. Дополнительно: Предупреждение: In if (xx> xy) {: условие имеет длину> 1 и только первый элементбудет использоваться
xy<-c(1:5)
xx<-c(1:10)
if(xx > xy){
father<-xy;
mother<-sample(xx,length(xy), replace = FALSE)
} else {
mother<-xx;
father<-sample(xy,length(xx), replace = FALSE)
}
Ошибка имеет смысл сама по себе, если я запускаю эти строки с sample
отдельно, но я думал, что кодировка if else
должна предотвратить это.