激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - R語言 - R語言入門使用RStudio制作包含Rcpp代碼的R包

R語言入門使用RStudio制作包含Rcpp代碼的R包

2022-01-20 15:38Kanny廣小隸 R語言

這篇文章主要為大家介紹了R語言入門使用RStudio來制作包含Rcpp代碼的R包,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步

當(dāng)我們進行模擬想要再次進行提速時,通常都會使用Rcpp將我們的R代碼改成C++代碼。具體Rcpp的使用可參考博客:Rcpp入門R代碼提速方法過程R語言學(xué)習(xí)RcppEigen進行矩陣運算

平時在我們使用的時候,直接使用Rcpp::sourceCpp()就可以直接將我們的C++代碼中的函數(shù)進行導(dǎo)入,這不會遇到什么問題,但如果我們想要使用snowfall進行并行時就不能再這樣做了。遇到的問題在博客中有進行說明:R中兩種常用并行方法――2. snowfall。

而解決這個問題的有效途徑,就是將我們的Rcpp代碼進行打包,然后再對包進行調(diào)用。下面我們就來介紹:如何使用RStudio制作包含Rcpp代碼的R包。

 

1. 創(chuàng)建項目

首先我們進入RStudio,然后選擇左上角的File―New Project。

新建Project后會得到如下圖所示的界面,我們接著選New Directory,

R語言入門使用RStudio制作包含Rcpp代碼的R包

再選擇R Package,

R語言入門使用RStudio制作包含Rcpp代碼的R包

最后在得到如下所示的界面后,我們在Package Name中輸入我們包的名稱,然后再在下面選擇Add,將我們的.cpp格式的C++文件選擇進去(里面是我們的函數(shù))。最后點擊Create package,即可創(chuàng)建一個R包的project了。

R語言入門使用RStudio制作包含Rcpp代碼的R包

創(chuàng)建完之后,RStudio會彈出一個新的界面,如下圖所示。

R語言入門使用RStudio制作包含Rcpp代碼的R包

然后我們需要對下述界面里面的一些配置文件進行一定的修改,然后才能完善我們的R包。

 

2. 修改一些文件

從上面界面的右下角的Files框框中,可以發(fā)現(xiàn)已經(jīng)多出了很多文件,包括DISCRIPTION等文件以及man、R、src三個文件夾。

在R文件夾中存的是R代碼,src文件夾中是C++代碼(包括我們之前添加的C++代碼)。

R語言入門使用RStudio制作包含Rcpp代碼的R包

R語言入門使用RStudio制作包含Rcpp代碼的R包

可能你的C++代碼中只有添加進去.cpp文件,由于我的代碼中不止使用了#include <Rcpp.h>,還有使用#include <RcppEigen.h>,這里注意,一定需要在DISCRIPTION文件的最后添加下面兩行(尤其是LinkingTo,不然會編譯失敗):

Imports: Rcpp
LinkingTo: Rcpp, RcppEigen

此外還可以在DISCRIPTION文件,添加一些作者姓名等一些重要信息。

R語言入門使用RStudio制作包含Rcpp代碼的R包

直接點開DISCRIPTION文件,會如上圖所示,我們直接進行修改即可。這里需要注意一下,Imports里面涉及到軟件的版本,是根據(jù)你R中現(xiàn)有包的版本來,如果想讓更多的電腦使用,在不影響程序使用的前提下,可以適當(dāng)降低依賴包的版本。

 

3. 打包

最后一步就是打包,這里介紹兩種打包方式:

選擇上方的Build――Build Source Package

R語言入門使用RStudio制作包含Rcpp代碼的R包

點擊右上角的Build中的Build & Reload

R語言入門使用RStudio制作包含Rcpp代碼的R包

第一種方法打包成功后,當(dāng)下面出現(xiàn)DONE字樣時,說明包會在默認路徑下安詳?shù)靥芍恕?br /> 第二種方法打包成功后會自動library載入。

 

4. 使用Eigen或其它依賴庫會出現(xiàn)的問題

如果我們再.cpp文件中使用的不止有Rcpp庫,還有別的庫,比如說Eigen。這時需要注意,用上面的方法打包是失敗的,會顯示沒有Eigen這個庫。

這個解決的方法也很簡單,直接在DISCRIPTION文件的LinkTo后面加上RcppEigen即可,如下圖所示:

R語言入門使用RStudio制作包含Rcpp代碼的R包

可能遇到的其他問題 制作R包后載入包內(nèi)函數(shù)時,出現(xiàn) “…” not available for .Call() for package “…” 錯誤

問題解決傳送門

R包制作后出現(xiàn)not available for錯誤問題解決

最后,就可以開心地享用新鮮出爐的包來做snowfall并行或者發(fā)給別人使用啦!

以上就是R語言入門使用RStudio制作包含Rcpp代碼的R包的詳細內(nèi)容,更多關(guān)于RStudio制作Rcpp代碼R包的資料請關(guān)注服務(wù)器之家其它相關(guān)文章!

原文鏈接:https://kanny.blog.csdn.net/article/details/82260929

延伸 · 閱讀

精彩推薦
  • R語言R語言gsub替換字符工具的具體使用

    R語言gsub替換字符工具的具體使用

    這篇文章主要介紹了R語言gsub替換字符工具的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友...

    lztttao10372021-12-24
  • R語言R語言實現(xiàn)支持向量機SVM應(yīng)用案例

    R語言實現(xiàn)支持向量機SVM應(yīng)用案例

    本文主要介紹了R語言實現(xiàn)支持向量機SVM應(yīng)用案例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    一天_pika5222022-01-18
  • R語言基于R/RStudio中安裝包“無法與服務(wù)器建立連接”的解決方案

    基于R/RStudio中安裝包“無法與服務(wù)器建立連接”的解決方案

    這篇文章主要介紹了基于R/RStudio中安裝包“無法與服務(wù)器建立連接”的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧...

    truffle52815052022-01-05
  • R語言R語言讀取xls與xlsx格式文件過程

    R語言讀取xls與xlsx格式文件過程

    這篇文章主要為大家介紹了使用R語言讀取xls與xlsx格式文件的過程步驟,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪...

    Kanny廣小隸11982022-01-20
  • R語言R語言中的vector(向量),array(數(shù)組)使用總結(jié)

    R語言中的vector(向量),array(數(shù)組)使用總結(jié)

    這篇文章主要介紹了R語言中的vector(向量),array(數(shù)組)使用總結(jié),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要...

    A葉子葉來5772021-11-14
  • R語言如何用R語言繪制散點圖

    如何用R語言繪制散點圖

    這篇文章主要介紹了如何用R語言繪制散點圖,幫助大家更好的理解和學(xué)習(xí)使用R語言,感興趣的朋友可以了解下...

    菜鳥教程13002021-12-23
  • R語言R語言常量知識點總結(jié)

    R語言常量知識點總結(jié)

    在本篇文章里小編給大家整理了一篇關(guān)于R語言常量知識點總結(jié)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)分享下。...

    R語言教程網(wǎng)12102021-12-29
  • R語言R語言中qplot()函數(shù)的用法說明

    R語言中qplot()函數(shù)的用法說明

    這篇文章主要介紹了R語言中qplot()函數(shù)的用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧...

    Jack_丁明12752022-01-05
主站蜘蛛池模板: 久久人| 欧美精品一区二区三区在线 | 羞羞的视频免费在线观看 | 日美黄色片 | 国产91久久精品一区二区 | 丰满年轻岳中文字幕一区二区 | 久久久久久久久久美女 | 羞羞色在线观看 | 成人富二代短视频 | 国产精品v片在线观看不卡 成人一区二区三区在线 | 亚洲精品欧美二区三区中文字幕 | 亚洲成人午夜精品 | 日日鲁一鲁视频 | 亚洲精品午夜国产va久久成人 | 99在线免费观看视频 | 日日夜av | 日本精品久久久久久草草 | 李宗瑞国产福利视频一区 | 国产精品久久国产精品 | 轻点插视频 | 久久免费看片 | 色天天综合网 | 羞羞羞网站 | 亚洲一区二区不卡视频 | 18视频在线观看娇喘 | 天天躁狠狠躁夜躁2020挡不住 | 欧美一级鲁丝片免费看 | wankzhd| 国产精品久久久久久久av | 欧美18—19sex性hd按摩 | 朋友不在家 | 久久精品久久精品久久精品 | 亚洲成人福利在线 | 毛片在哪看 | 国产午夜精品一区二区三区不卡 | 亚洲性生活视频 | 久久久综合视频 | 欧美性色生活片免费播放 | 久久不雅视频 | 精品一区二区久久久久久久网精 | 国产精品久久久乱弄 |