我对这种“置信区间”Matlab解决方案的理解是否正确?

时间:2014-03-28 13:14:35

标签: matlab vector statistics

我遇到了自动检测向量中连续性区域的问题。我有很多这些载体,数百个。这种向量的一个例子是:http://pastebin.com/UiSkJ7Da

所以基本上看向量可以看到有连续区域,然后它会断开,跳跃一些值,然后有另一个连续区域等等。

新闻阅读器上的一位好人为我提供了这个解决方案:

v = [ 9 18 21 58 59 60 63 66 69 70 72 74 ...
dv = diff([0 v]);                                       % Create difference vector
dvs = [mean(dv)  std(dv)];                              % Determine mean & std
dvd = [0 find(dv > 1.96*dvs(2)+dvs(1)) length(v)];      % Use ‘dvs’ to detect discontinuities & create index reference vector
for k1 = 1:length(dvd)-1
    vs{k1} = v(dvd(k1)+1:dvd(k1+1)-1);                  % Create cell array of regions-of-interest
    vi{k1} = [dvd(k1)+1 dvd(k1+1)-1];                   % Create reference array of start-end indices for ‘vs’ regions
end

这非常有效,并使用95%置信区间来查找区域索引的起点和终点。

我知道它有效我只是想知道为什么以及如何运作。

统计数据不是我的强项,所以我一直在详细阅读与提供的解决方案相关的任何内容。任何有统计数据的人都可以对此有所了解。

我想完全理解所提供解决方案的工作原理。基于我所阅读和理解的内容,这是我对解释的理解(请注意我根本没有统计数据,因此我可能会在这里非常基础)。

所以开始一个95%的置信区间基本上是说我95%确定给定的概率平均值在[a,b]之内。

这可以用公式计算:

x +- 1.96 (std/sqrt(n))

其中x是平​​均值,std是标准偏差,n是样本大小。

此置信区间仅适用于正态分布。

所以现在我完成了我的基础知识,让我试着解释一下我对解决方案的理解。

通过我的载体判断并且观察到样品是正常分布的样品(在跳跃之间)。知道这些是正态分布只是找到它们的置信区间将给出正态分布样本的起点和终点。

这就是这一行:

dvd = [0 find(dv > 1.96*dvs(2)+dvs(1)) length(v)];

where find,找到置信区间方程成立的点的索引,但为什么差分向量dv?为什么在条件陈述中使用它?

为什么甚至创建差异向量?为什么在上面的行中使用它?

这是基于我今天读到的内容,所以我可能会离开。很抱歉这么长时间阅读,但我是在正确的道路上吗?我的理解是否正确。

统计数据让我非常着迷,因为我可以根据样本做出明智的假设并发现它们是真实的。

谢谢

1 个答案:

答案 0 :(得分:1)

这只是我的观点,我希望它看起来不像是一种礼貌 - 但在我看来,你在这里采取的方法根本没有统计学上的理由。特别是,您描述为“连续”的信号区域包含的值甚至不接近正态分布;它们非常接近均匀分布,有一些颠簸。您尝试使用置信区间的内容是不必要的,至少对于您在pastebin中发布的样本信号而言。

应用diff的起点是明智的 - 这基本上为您提供了信号导数的离散近似。只需输入figure; plot(v); figure; plot(dv);(使用上面的变量名称),您就会看到我的意思 - 原始信号v中存在不连续性的位置对应于您在衍生dv

要找到这些点,不需要乱用置信区间,只需查找dv超过某个阈值的所有点。您需要准确确定要使用的阈值,在您的示例中,很明显您可以选择一系列阈值并获得正确的结果(您可能在区分小的离散跳跃时遇到一些困难)从最后逐渐增加的区域开始。)

在一个更复杂的例子中,跳跃不太明显,你可以使用某种基于置信区间的方法来选择一个阈值,该阈值可以捕获尽可能多的离散跳跃,同时排除尽可能多的逐渐增加。但构建置信区间总是会假设数据的统计属性;如果你打算这样做,你需要确保你的数据真正符合这些假设。如果您假设连续区域包含正态分布值,则此处的信号不符合该假设。

希望有所帮助。此外,您可以通过在stats.stackexchange.com而不是在此处提出此问题来获得更好的建议。