0

我试图获得两个不同系列 p 和 q 的经验分布。

我使用了语法[f1,x]=ecdf(p)[f2,x]=ecdf(q). f1尽管这是两个完全不同的系列,但它们为和产生相同的值f2。我猜这是因为matlab生成的节点点 x 默认选择并且对于两个系列是相同的。正确的生成方式是ecdf什么?

p 和 q 定义如下:

p=[3.827880237 3.843230114 3.832979798 3.814851094 3.798070125 3.793802374 3.790420184 3.758288905 3.703854270 3.699633917 3.722435113 3.685122405 3.671987586 3.677439264 3.673511977 3.706842154 3.69299597];

q=[3.832763324 3.848230872 3.835789699 3.819249605 3.802654468 3.801538272 3.800867956 3.763986927 3.711618941 3.703275334 3.744550651 3.688129173 3.673511977 3.681603045 3.679081612 3.716737782 3.702782359];
4

1 回答 1

1

您覆盖不同的 x,如果您使用以下代码,您将有不同的曲线。

[f1,x1]=ecdf(p);
[f2,x2]=ecdf(q);

figure; plot(f1, x1, 'b', f2, x2, 'r');

累积分布与预期不同:

在此处输入图像描述

于 2016-03-05T07:29:44.673 回答