Случайная выборка - PullRequest
       36

Случайная выборка

0 голосов
/ 20 июля 2011

Я хотел бы знать, как реализовать способ получения случайной подвыборки в более крупной выборке в R, используя большую коллекцию истинных случайных чисел (полученных с помощью квантового генератора), которые являются целыми числами, которые могут встречаться несколько раз.

__

Редактировать: Решение.

Поскольку я нуждался в remise и мои сгенерированные числа в float64 были, наконец, уникальными (из-за высокой точности), я использовал следующее решение:

1) генерировать столько чисел, сколько длины (данных)

2)

temp<-cbind(data,randomnb)
randomizeddata<-res[order(res[,2])]

3) разделить набор данных

Ответы [ 3 ]

6 голосов
/ 20 июля 2011

Для истинных случайных чисел используйте randomNumbers из пакета random.

r <- randomNumbers(number_of_samples, max = nrow(your_data), col = 1)
your_data[r, ]
1 голос
/ 20 июля 2011

Допустим, v - ваши данные, а r - истинные случайные числа (масштабированные таким образом, чтобы они варьировались от 0 до 1):

> v <- runif(100)
> r <- runif(10) # using psedo-random numbers for demo purposes
> v[r * length(v) + 1]

. Выбирает десять случайных элементов.от v (с заменой).

0 голосов
/ 20 июля 2011

Как насчет образца функции?

, например

set.seed(3) # just to get the same result
x <- 1:10
sample(x,10)
# print: 2  8  4  3  9  6  1  5 10  7
...