在Matlab中可以进行点态多元线性回归吗

在Matlab中可以进行点态多元线性回归吗,matlab,for-loop,linear-regression,scalar,Matlab,For Loop,Linear Regression,Scalar,我试图在Matlab中运行逐点多元线性回归,即,获取数据集中每个点的回归系数 我有三个自变量和一个因变量。每个变量都是一个列向量,有160万条记录。每个数据点代表一个地理位置;我做这一切的目的是试着在每像素的基础上观察预测变量对响应变量的影响 我已经成功运行了fitlm、Regression和mldivide;这些函数为我的数据得到三个回归系数。然而,我想独立地对我的所有点进行多元回归,这样最终我将得到三列回归系数,每列160万条记录 我的数据包含一些NaN。这些行不能被忽略;由于数据点的位置与

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

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

我已经成功运行了fitlm、Regression和mldivide;这些函数为我的数据得到三个回归系数。然而,我想独立地对我的所有点进行多元回归,这样最终我将得到三列回归系数,每列160万条记录

我的数据包含一些NaN。这些行不能被忽略;由于数据点的位置与实际坐标相关,因此最终列向量的大小必须与原始向量的大小相同

我已经研究了bsxfun的代码,但不相信它能帮我。我也尝试过使用点符号,但没有成功。我现在的想法是创建一个for循环,并使用mldivide一次划分一行。然而,当我尝试在标量上使用“回归”时(模拟一行数据),我得到了错误“X的秩不足到机器精度以内”。我在使用mldivide时没有得到这个错误


做点态多元线性回归可能吗?在我看来,我的样本量太小了。任何关于这一点可行性的反馈,以及for循环是否是一个好的追求方向,都将不胜感激

简言之,这可能(取决于您所安装的型号),
对于
是不好的,目标是矢量化。查看此相关问题:。感谢您的反馈。在进一步思考之后,我认为最好的方法是创建一个移动窗口,每个窗口包含约40个数据点,然后对这些点进行回归。我现在正在研究这个问题。简言之,这是可能的(取决于你所安装的型号),
对于
来说是不好的,目标是矢量化。查看此相关问题:。感谢您的反馈。在进一步思考之后,我认为最好的方法是创建一个移动窗口,每个窗口包含约40个数据点,然后对这些点进行回归。我现在正在努力。