【问题标题】:ecdf() function in Matlab not giving all the values in outputMatlab中的ecdf()函数没有给出输出中的所有值
【发布时间】:2012-07-04 02:54:41
【问题描述】:

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

【问题讨论】:

    标签: matlab statistics cdf ecdf


    【解决方案1】:

    从具有 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
    

    【讨论】:

      猜你喜欢
      • 2016-09-07
      • 2022-11-27
      • 1970-01-01
      • 1970-01-01
      • 2018-03-15
      • 1970-01-01
      • 2013-07-30
      • 1970-01-01
      • 2012-12-10
      相关资源
      最近更新 更多