rcpp

    0熱度

    1回答

    我試圖在我的Rcpp代碼中使用nearPD函數。雖然看起來微不足道,但我找不到爲什麼它不起作用。這是我的代碼的簡化版本: #include <RcppArmadillo.h> // [[Rcpp::depends(RcppArmadillo)]] using namespace arma; using namespace Rcpp; // [[Rcpp::export]] mat eB

    0熱度

    1回答

    我正在用Rcpp試圖從Rcpp代碼中創建sparseMatrix的實例,讓自己的腳變得溼潤。 據我所知,爲了創造S4對象我們稱之爲S4的構造與所需類的名字作爲一個字符串,如: S4 foo() { S4 s("dgCMatrix"); return s; } 但在我的情況下,這將失敗,並 Error in getClass("dgCMatrix") : 「dgCMatri

    2熱度

    1回答

    我正在使用Rcpp 0.12.11和R 3.4.0。 當我升級到RCPP 0.12.11,由RCPP ::自動生成的R檔RcppExports.R compileAttributes開始給我稍有不同的函數調用 run_graph_match <- function(A, B, algorithm_params) { # Rcpp 0.12.10 .Call('RGraphM_run_graph

    0熱度

    2回答

    有人可以向我解釋爲什麼當我將arma::mat P(X * arma::inv(X.t() * X) * X.t());添加到我的代碼時,計算變得如此之慢。上次我對代碼進行基準測試時,平均數增長了164倍。 // [[Rcpp::depends(RcppArmadillo)]] #include <RcppArmadillo.h> using namespace Rcpp; //[[Rc

    0熱度

    1回答

    我想通過傳遞參數列表來調用使用Rcpp和R函數定義的C++函數,類似於使用R中的do.call。一個愚蠢的例子: 假設我有一個向量,我想計算一個修剪的均值。兩種可能的方法是 x = rnorm(100) mean(x, trim = 0.1) do.call("mean", list(x = x, trim = 0.1)) 在我的特定情況下使用do.call是可取的,因爲它可能是幾個參數以

    0熱度

    1回答

    我注意到,從RCPP獨特功能對結果進行排序 evalCpp("unique(IntegerVector::create(6,6,1,5,5,1))") [1] 6 5 1 unique(c(6,6,1,5,5,1)) [1] 6 1 5 是否有辦法避免這種情況? 感謝您的幫助

    0熱度

    1回答

    我的問題很簡單: 我目前正試圖通過使用Rcpp來編寫一些C++代碼來加速我的r代碼。但是現在我需要插入一些我自己寫在R中的函數。我怎麼能這樣做? 編輯1:示例代碼。 我有三個功能我寫我自己,他們被稱爲: 1.pre_process。 2.transfer_element。 3.預測。 #include <Rcpp.h> using namespace Rcpp; NumericVector

    -2熱度

    1回答

    我宣佈我的.so文件的函數 func_signature namespace_name::class_name::function_name(){ /* some code here*/ } 我要打電話跟我RStudio部署RShiny應用程序函數名()這個函數。如何在語法和語句中調用此函數?

    0熱度

    1回答

    我目前正在使用Windows計算機,並且與knitr和Rcpp有一些問題交互。 我的代碼工作正常,當我在Rstudio運行它,但是當我嘗試使用knitr創建的HTML文件,我得到的錯誤: 創建HTML文件的工作,當我刪除了這一行,所以似乎它在Rcpp或knitr軟件包中都不是問題。 在另一個說明中,我從來沒有在代碼中使用過sourceCPP函數,但是cppFunction(使用C代碼作爲字符串的變

    1熱度

    1回答

    當我嘗試從犰狳立方體(使用管或切片)獲取矢量/雙精度時,出現編譯錯誤。如何從立方體到(行)vec?我找不到優雅的演員/變形犰狳功能。 #include <RcppArmadillo.h> //#include <Rcpp.h> using namespace Rcpp; // [[Rcpp::export]] void testarma() { arma::mat B;