使用matlabs类回归多边形拟合

使用matlabs类回归多边形拟合,matlab,Matlab,我有: x = [1970:1:2000] y = [data] size(x) = [30,1] size(y) = [30,1] 我想: % Yl = kx + m, where [k,m] = polyfit(x,y,1) 出于某种原因,我不得不用“回归”来表示 使用k=回归(x,y)给出了一些完全随机的值,我不知道它来自哪里。怎么做?在“k”中获得的输出数量取决于输入X的大小,因此,仅通过直接输入X和y,不会同时获得m和k。从文档中: b=回归(y,X)返回系数估计的p×1向量b,

我有:

x = [1970:1:2000]
y = [data]

size(x) = [30,1]
size(y) = [30,1]
我想:

% Yl = kx + m, where
[k,m] = polyfit(x,y,1)
出于某种原因,我不得不用“回归”来表示


使用k=回归(x,y)给出了一些完全随机的值,我不知道它来自哪里。怎么做?

在“k”中获得的输出数量取决于输入X的大小,因此,仅通过直接输入X和y,不会同时获得
m
k
。从文档中:

b=回归(y,X)返回系数估计的p×1向量b,用于对X中的预测值进行y中的响应的多线性回归。X是n个观测值中每一个的p预测值的n×p矩阵。y是观察到的响应的n×1向量

虽然没有明确说明,但帮助文档中使用
carsmall
内置数据集的示例向您展示了如何进行设置。对于您的情况,您需要:

X = [ones(size(x)) x]; % make sure this is 30 x 2
b = regress(y,X);  % y should be 30 x 1, b should be 2 x 1
b(1)
应该是你的
m
,而
b(2)
应该是你的
k

回归
还可以提供额外的输出,如置信区间、残差、统计数据(如r平方等)。输入保持不变,您只需更改输出:

[b,bint,r,rint,stats] = regress(y,X);

在“k”中获得的输出数量取决于输入X的大小,因此仅通过输入X和y就无法同时获得
m
k
。从文档中:

b=回归(y,X)返回系数估计的p×1向量b,用于对X中的预测值进行y中的响应的多线性回归。X是n个观测值中每一个的p预测值的n×p矩阵。y是观察到的响应的n×1向量

虽然没有明确说明,但帮助文档中使用
carsmall
内置数据集的示例向您展示了如何进行设置。对于您的情况,您需要:

X = [ones(size(x)) x]; % make sure this is 30 x 2
b = regress(y,X);  % y should be 30 x 1, b should be 2 x 1
b(1)
应该是你的
m
,而
b(2)
应该是你的
k

回归
还可以提供额外的输出,如置信区间、残差、统计数据(如r平方等)。输入保持不变,您只需更改输出:

[b,bint,r,rint,stats] = regress(y,X);

在“k”中获得的输出数量取决于输入X的大小,因此仅通过输入X和y就无法同时获得
m
k
。从文档中:

b=回归(y,X)返回系数估计的p×1向量b,用于对X中的预测值进行y中的响应的多线性回归。X是n个观测值中每一个的p预测值的n×p矩阵。y是观察到的响应的n×1向量

虽然没有明确说明,但帮助文档中使用
carsmall
内置数据集的示例向您展示了如何进行设置。对于您的情况,您需要:

X = [ones(size(x)) x]; % make sure this is 30 x 2
b = regress(y,X);  % y should be 30 x 1, b should be 2 x 1
b(1)
应该是你的
m
,而
b(2)
应该是你的
k

回归
还可以提供额外的输出,如置信区间、残差、统计数据(如r平方等)。输入保持不变,您只需更改输出:

[b,bint,r,rint,stats] = regress(y,X);

在“k”中获得的输出数量取决于输入X的大小,因此仅通过输入X和y就无法同时获得
m
k
。从文档中:

b=回归(y,X)返回系数估计的p×1向量b,用于对X中的预测值进行y中的响应的多线性回归。X是n个观测值中每一个的p预测值的n×p矩阵。y是观察到的响应的n×1向量

虽然没有明确说明,但帮助文档中使用
carsmall
内置数据集的示例向您展示了如何进行设置。对于您的情况,您需要:

X = [ones(size(x)) x]; % make sure this is 30 x 2
b = regress(y,X);  % y should be 30 x 1, b should be 2 x 1
b(1)
应该是你的
m
,而
b(2)
应该是你的
k

回归
还可以提供额外的输出,如置信区间、残差、统计数据(如r平方等)。输入保持不变,您只需更改输出:

[b,bint,r,rint,stats] = regress(y,X);

如果您查看文档,它会说正确的形式是
k=regresse(y,X)
。你确定你用的是正确的表格吗?另外,你怎么知道它是一个完全随机的值呢?如果你看一下文档,它说正确的形式是
k=regresse(y,X)
。你确定你用的是正确的表格吗?另外,你怎么知道它是一个完全随机的值呢?如果你看一下文档,它说正确的形式是
k=regresse(y,X)
。你确定你用的是正确的表格吗?另外,你怎么知道它是一个完全随机的值呢?如果你看一下文档,它说正确的形式是
k=regresse(y,X)
。你确定你用的是正确的表格吗?还有,你怎么知道它是一个完全随机的值?