2012-02-01 3 views
0

Какой код в R будет сделать следующее:Случайные числа в R

Учитывая список 1, 2, ..., M создать список N случайных записей из этого списка. Кроме того, получите список дополнений.

example: 
N = 5 
M = 10 
list = [1,4,3,9,2] 
complement = [5,6,7,8,10] 
+1

Это действительно «дополнение», если вам все равно. – mdsumner

ответ

6

?sample

samp_range <- 1:M 
out <- sample(samp_range, N) 
compliment <- samp_range[!samp_range %in% out] 

или на комментарий Joran в:

compliment <- setdiff(samp_range, out) 

Кроме того, как правило, не использовать такие вещи, как list как имена переменных, так как они являются внутренними функциями R.

+0

Ницца. Я добавлю примечание о 'setdiff' в комментарий здесь и удалю мой. – joran

+0

или просто вне <- образец (M, N); комплимент <- samp_range [-out] –

Смежные вопросы