实例: 大维的方差估计需要应用一个R包PDSCE,而之前的程序都由MATLAB书写。因此,需要在MATLAB程序中调用R的PDSCE包。
首先,安装R软件(需要将R加入到系统路径,即修改环境变量path)。
其次,从本地安装PDSCE。有些包需要C编译,如果不能加载成功,需要安装Rtools。
然后,编写如下的程序过程
1. csvwrite('in.csv',input_data); %将matlab的数据写到csv格式中,这个相当于要将R中需要的参数写到csv中,有多少个参数就写多少个文件
2. !R CMD BATCH ./callPDSCE.R %运行callPDSCE.R,callPDSCE.R具体列出在下面
3. output_data = csvread('out.csv',1,1); %读从R中运算出的结果
%callPDSCE.R中的内容
rawdat <- read.csv('in.csv',header=FALSE) %读从matlab写入csv的格式
library("PDSCE") %加载包
cv.out=band.chol.cv(x=rawdat) %调用估计方差矩阵的R函数
write.csv(cv.out$sigma,'out.csv') %运算结果写入csv文件中
上面的过程可以应用于一般的MATLAB调用R的应用,网上的MATLAB_RLINK有太多的bug,不推荐这个方式。