0

有 2 个列向量 A、B,包含 100 个数据值。我打算使用以下代码绘制 MSE(均方误差),但我得到的只是一个点而不是线图。请帮助如何去做。

A=x(:,1);
B=y(:,1);

er=(double(A)-double(B)).^2;
row_er=mean(er,2); % variable changed
plot(row_er); 
4

2 回答 2

0

请注意,命令 mean 返回一个向量的平均值(这是一个简单的值)。如果要绘制平方误差,则只需绘制((AB)。^ 2)。

但是...如果您有兴趣用 10 个样本的平均值绘制均方误差,您将得到一个只有 10 个点的图(100 / 10,因为每 10 个数据点被平均得到一个点)。

该命令将是

情节(blkproc((AB)。^ 2,[10,1],'平均'))

希望能帮助到你。

于 2012-07-22T18:00:48.260 回答
0

这个脚本工作正常。

A = randn(10, 1);
B = randn(10, 1);
er=(double(A)-double(B)).^2;
row_e=mean(er,2);
plot(row_e)

可能你有一个错字(row_er

row_e=mean(er,2);
plot(row_er);
于 2012-07-22T07:32:08.370 回答