5
저는 Rcpp의 새로운 브랜드입니다. 행렬의 행렬식을 얻기 위해 R 패키지 RcppEigen을 사용하려고합니다. 다음 코드는 파일에 저장되며 sourceCpp를 사용하여이 코드를 사용합니다. SourceCpp를 사용할 때 컴파일 오류가 없습니다. R에서 getDeterminant(A)
을 사용하는 경우 A
이 매트릭스입니다. 항상 다음 오류를 발생시킵니다.RcppEigen을 사용하여 행렬의 행렬식을 얻는 방법
"Error: could not find function "getDeterminant""
그러나 getEigenValues
은 잘 작동합니다.
아무도 나에게 기꺼이 도와 주시면 감사하겠습니다. 감사합니다.
#include <RcppEigen.h>
// [[Rcpp::depends(RcppEigen)]]
using Eigen::Map; // 'maps' rather than copies
using Eigen::MatrixXd; // variable size matrix, double precision
using Eigen::VectorXd; // variable size vector, double precision
using Eigen::SelfAdjointEigenSolver; // one of the eigenvalue solvers
using Eigen::MatrixXi;
using Eigen::MatrixBase;
// [[Rcpp::export]]
VectorXd getEigenValues(Map<MatrixXd> M) {
SelfAdjointEigenSolver<MatrixXd> es(M);
return es.eigenvalues();
}
// [[Rcpp:export]]
double getDeterminant(Map<MatrixXd> AA){
return AA.determinant();
}
! 정말 고맙습니다! ! :) – Crystal