RccpArmadillo и RccpGSL не загружаются в RStudio в Windows

У меня есть функция C ++:

#include <RcppArmadilloExtensions/sample.h>
using namespace Rcpp;
IntegerVector fnGender(int item, bool replace, NumericVector vSegPop,
IntegerVector vLevelsGender, NumericMatrix mGender) {
RNGScope scope;
IntegerVector ret = RcppArmadillo::sample(vLevelsGender, vSegPop(item),
replace, mGender.row(item)) ;
return ret;
}

Я использую функцию RccpArmadillo :: sample вместо sample R).

Когда я загружаю функцию с помощью sourceCpp, я получаю следующую ошибку.

g++ -m64 -I"C:/Users/USER/DOCUME~1/R/R-31~1.1/include" -DNDEBUG     -
I"C:/Users/USER/Documents/R/R-3.1.1/library/Rcpp/include"  -
I"d:/RCompile/CRANpkg/extralibs64/local/include" -O2 -Wall  -mtune=core2 -c Code.cpp -o Code.o

0

Решение

В духе сезона, вот ваш код с двумя изменениями, предложенными в комментариях, который прекрасно подходит для меня на Windows:

#include <RcppArmadilloExtensions/sample.h>

// [[Rcpp::depends(RcppArmadillo)]]

using namespace Rcpp;

// [[Rcpp::export]]
IntegerVector fnGender(int item, bool replace, NumericVector vSegPop,
IntegerVector vLevelsGender, NumericMatrix mGender) {
IntegerVector ret =
RcppArmadillo::sample(vLevelsGender, vSegPop(item),
replace, mGender.row(item)) ;
return ret;
}

Я удалил RNGScope scope; поскольку используемая здесь структура сборки Rcpp автоматически добавляет его в любом случае.

1

Другие решения


По вопросам рекламы [email protected]