2013-02-13 3 views
6

Это может быть очень простой вопрос, но я не могу его найти. Как я могу выбрать случайное целое число от 1 до N в Rcpp? Я знаю, что могу пробовать единый номер и его округлять, или включать функцию sample для использования в коде на C++, но оба они не кажутся правильными.Пример случайного целого числа в Rcpp

+0

Я думаю, что это приемлемый способ выборочного измерения равномерно и круглый (если вероятности для 1 и N такие же, как и для всех других значений) –

+0

http://dirk.eddelbuettel.com/blog/ 2012/09/02 / – Andrie

ответ

6
  1. AFIACR мы не имеем «приличную» (т.е. vectorised) sample() функции в Rcpp-земле, но Кристиан Gunning работает на одной основе Армадилло через RcppArmadillo.

  2. Вы можете, конечно, образец из U (0,1), шкалы в N и для остальных. Мы имеем R::runif() для скалярного футляра и runif() в сахаре, который векторизован.

Edit: По состоянию на 2017 год, как RcppArmadillo и Rcpp теперь имеют sample() функцию.

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