私は主にRユーザーですが、コーディング(速度)を向上させるためにRcppを学びたいと思っています。だから私はC++とRcppをいじり始めました。行列の行 (つまり、最初の行) を取り、そこからベクトルを差し引く (m[1,]-vec )。
私はこれがばかげて単純に聞こえることを知っていますが、それを機能させることができません。
code <- '
arma::mat beta = Rcpp::as(beta_);
arma::vec y = Rcpp::as(y_);
arma::rowvec S= beta.row(0);
arma::vec d = S - y;
return Rcpp::wrap(d);
'
fun <- cxxfunction(signature(beta_="matrix",y_="numeric"),code, plugin="RcppArmadillo")
m <- matrix(1:9,3)
vec <- c(1,2,5 )
fun(m,vec) fun(m, vec)
のエラー:R では、これは
m[1,]-vec
0 2 2として行われます