require(inline)
func <- cxxfunction(, 'return Rcpp::wrap( qnorm(0.95,0.0,1.0) );' ,plugin="Rcpp")
错误:没有匹配函数来调用'qnorm5(double,int,int)'
require(inline)
func <- cxxfunction(, 'return Rcpp::wrap( qnorm(0.95, 0.0, 1.0, 1, 0) );'
,plugin="Rcpp")
错误:没有匹配函数来调用'qnorm5(double,double,double,int,int)'
require(inline)
code <-'
double a = qnorm(0.95, 0.0, 1.0);
return Rcpp::wrap( a );
'
func <-
cxxfunction(, code ,plugin="Rcpp")
func()
错误:没有匹配函数来调用'qnorm5(double,double,double)'
如何在Rcpp上使用qnorm?
答案 0 :(得分:7)
通过显示错误消息显示的mean
和sd
参数double
- 所以试试这是一个完整的示例
library(inline)
f <- cxxfunction(signature(xs="numeric", plugin="Rcpp", body='
Rcpp::NumericVector x(xs);
return Rcpp::wrap(Rcpp::qnorm(x, 1.0, 0.0));
')
并查看示例和单元测试 - 我只是在单元测试文件runit.stats.R
中查看了这个文件,其中包含许多针对这些统计'Rcpp sugar'函数的测试用例。
编辑于2012-11-14: 今天发布了Rcpp 0.10.0,如果您想使用C,可以调用签名R::qnorm(double, double, double, int, int)
针对Rmath.h
编写的代码。 Rcpp糖仍然为您提供矢量化版本。