今天本人學習了如何利用R語言來調用C++程序。為什麼要這麼多呢? 因為R語言雖然方便,但是計算太慢了,尤其是在循環語句方面的使用,R語言簡直是無法忍受,所以在R語言中為了提高速度,必要時候還得改用C++來實現。
在R語言中要調用C++是通過Rcpp這個包來實現的。所以要先安裝Rcpp這個包咯!安裝完成後本人就開始來寫C++部分的代碼了,框架如下圖
在R語言傳給C++的參數中,有R的各種類型,比如向量,矩陣等等。具體轉化規則可以參考資料。
寫完上述C++代碼後,就可以來編譯成*.so文件了。編譯腳本如下
保存後執行sh compile.sh,然後得到了test.so文件。
接著,本人開始編寫test.R文件來使用它了。代碼如下
接下來就是最後一步了,即執行test.R文件。如下結果
好了到了這裡相信大家都知道如何利用R來調用C++了吧!接下來認識一些R到C++轉化類型。
今天只是一個開頭,更多內容需要讀者自己進一步學習!!!!!
《C++ 設計新思維》 下載見 http://www.linuxidc.com/Linux/2014-07/104850.htm
C++ Primer Plus 第6版 中文版 清晰有書簽PDF+源代碼 http://www.linuxidc.com/Linux/2014-05/101227.htm
讀C++ Primer 之構造函數陷阱 http://www.linuxidc.com/Linux/2011-08/40176.htm
讀C++ Primer 之智能指針 http://www.linuxidc.com/Linux/2011-08/40177.htm
讀C++ Primer 之句柄類 http://www.linuxidc.com/Linux/2011-08/40175.htm
將C語言梳理一下,分布在以下10個章節中: