1

我使用ecdf()Matlab 中的函数计算了经验分布的 CDF,用于具有10,000值的分布。但是,我从中获得的输出仅包含9967值。如何获得10,000CDF 的总值?谢谢。

4

1 回答 1

4

从具有 10'000 个值的分布中,您期望输出长度为 10'001。最有可能的是,您的分布包含 44 个 NaN,或重复值。前者用 核对sum(isnan(data(:)),后者用length(unique(data(:))

>> out = ecdf(1:5)
out =
         0
    0.2000
    0.4000
    0.6000
    0.8000
    1.0000
>> length(out)
ans =
     6
>> out = ecdf([1:5,NaN,NaN])
out =
         0
    0.2000
    0.4000
    0.6000
    0.8000
    1.0000
>> length(out)
ans =
     6
>> out = ecdf([1:5,5,5])
out =
         0
    0.1429
    0.2857
    0.4286
    0.5714
    1.0000
>> length(out)
ans =
     6
于 2012-07-04T03:26:01.550 回答