问题是我有一个变量arma::mat prob_vec
,并希望在R中等同于rmultinom(1, 1, prob_vec)
。
我发现RcppArmadillo提供的rmultinom
函数有一个奇怪的参数要求,它不同于R!所以它不会通过编译。
我只想知道如何在RcppArmadillo中绘制所需的样本,或者等同于Armadillo。如果我需要获取指针或转换我的prob_vec
变量,请告诉我如何。
非常感谢!
答案 0 :(得分:5)
你友好的邻居RcppArmadillo
的合着者:我可以向你保证,它不会提供rmultinom
,但是Rcpp会这样做。事实上,它只是简单地传递给R本身grep
会告诉你:
inline void rmultinom(int n, double* prob, int k, int* rn)
{ return ::rmultinom(n, prob, k, rn); }
所以我建议你先写一个针对R API的五行C程序,以确保你知道如何让rmultinom
做你想做的事,然后使用Rcpp和RcppArmadillo来做载体中的数据也是如此。