是否可以在Matlab

时间:2017-11-07 06:18:57

标签: matlab for-loop linear-regression scalar

我试图在Matlab中运行逐点多元线性回归,即获得数据集中每个点的回归系数。

我有三个自变量和一个因变量。每个变量都是一个列向量,有大约160万条记录。每个数据点代表一个地理位置;我做这一切的目的是尝试在每像素像素的基础上看到预测变量对响应变量的影响。

我已经成功地运行了fitlm,退步和mldivide;这些函数为我的数据提供了三个回归系数。但是,我想独立地通过我的所有点进行多元回归,这样我最终会得到三列回归系数,每列有160万条记录。

我的数据包含一些NaN。这些行不容忽视;最终的列向量必须与原始向量的大小相同,因为数据点的位置与实际坐标有关。

我已经查看了bsxfun的代码,但不相信它可以帮助我。我也尝试使用点符号,但这并没有奏效。我现在的想法是创建一个for循环并一次使用mldivide一行。但是,当我尝试使用'回归'对于标量(模拟一行数据),我得到了错误" X在机器精度范围内排名不足。"当我使用mldivide时,我没有收到此错误。

是否可以进行逐点多元线性回归?在我看来,我的样本量太小了。任何关于这种可行性的反馈,以及for循环是否是一个很好的方向,都将受到高度赞赏。

0 个答案:

没有答案
相关问题