问题描述
我有一个尺寸为19行和7541502列的矩阵。 我想使用回归获得每列的趋势。 使用MATLAB函数可以做到这一点,但需要很多时间。 编写的函数如下:
Data = Box1;
[r,c] = size(Data);
X = [1:r]'; Total = [];
for j = 1:c;
Y = Data(:,j);
[b1,bint1] = regress(Y,[ones(size(Y)) X]);
Qs = [bint1(2,:),b1(2,:)];
Total = [Total; Qs];
end
有没有一种方法可以在MATLAB中加速Mfile? 有没有一种不用函数就可以计算回归的方法吗?
谢谢。
解决方法
在进入for循环之前,尝试将Total
初始化为正确的大小。
Total = zeros(c,2);
代替:
Total = [];