Tôi là thương hiệu mới của Rcpp. Tôi đang cố gắng sử dụng R gói RcppEigen để có được yếu tố quyết định của một ma trận. Đoạn mã sau được lưu trong một tập tin và tôi sử dụng sourceCpp để sử dụng nó. Không có lỗi biên dịch khi tôi sử dụng sourceCpp. Khi sử dụng getDeterminant(A)
trong R, A
là một ma trận. Nó luôn luôn phàn nàn lỗi sau.cách nhận định thức của ma trận sử dụng RcppEigen
"Error: could not find function "getDeterminant""
Tuy nhiên, getEigenValues
hoạt động tốt.
Tôi đánh giá cao rất nhiều nếu có ai vui lòng giúp tôi với điều này. Cảm ơn rất nhiều!
#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();
}
tôi xem! Cảm ơn bạn rất nhiều! ! :) – Crystal