R語言學習初識Rcpp類型List
當我們想將 Rcpp
中的多種類型的對象通過一個 return
函數(shù)返回時,此時就需要將我們的所有對象整理成一個 Rcpp::List
型,然后再進行返回。
但相比于 R 中的 list(mat1 = mat1, mat2 = mat2)
,Rcpp
中的列表創(chuàng)建就相對復雜一些,需要使用 create()
函數(shù),如下面例子所示:
Rcpp::List ListFun(MatrixXd X) { Eigen::MatrixXd mat1, mat2; return List::create(Named("matrix1") = mat1, Named("matrix2") = mat2); }
在 return
之后,我們想要在我們的 .cpp
文件中再調(diào)用這個 List
(或者直接讀取 R 中的 list
類型均可),這時我們應該怎么做呢?
其實也非常簡單,分兩步即可:第一步創(chuàng)建 List
,第二步分別創(chuàng)建 List
中的內(nèi)容,對象類型對應上即可,如下所示:
void TestFun(MatrixXd X, MatrixXd Y) { Rcpp::List result_x, result_y; result_x= ListFun(X); result_y= ListFun(Y); MatrixXd mat1_x = result_x["matrix1"]; MatrixXd mat1_y = result_y["matrix1"]; MatrixXd mat2_x = result_x["matrix2"]; MatrixXd mat2_y = result_y["matrix2"]; }
以上就是R語言學習初識Rcpp類型List的詳細內(nèi)容,更多關(guān)于R語言Rcpp初識List類型的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
R語言數(shù)據(jù)可視化繪圖bar chart條形圖實現(xiàn)示例
這篇文章主要為大家介紹了R語言數(shù)據(jù)可視化繪圖bar chart條形圖的實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2022-02-02