matlab 点符号随机变化,当翻转数据点的符号时,为什么Matlab signrank函数会返回相同的带符号秩统计值?...

谢谢!实际上,统计量是正差等级的总和与负差等级的总和之间的最小值.我不明白为什么要花最少的钱.你呢?

有趣的问题,并感谢您链接到matlab代码.是的,这也让我挠了几分钟,他们肯定是卷曲的,大概是为了提高计算效率.但是令人惊讶的是,它确实确实像以前发布的那样执行了签名等级.

这是它的工作方式(我在下面粘贴了相关的几行代码以供参考).

让我将P表示为所有积极等级的总和(与积极得分相对应的等级),将N表示为所有负面等级的总和,最后将A表示为所有等级的绝对总和.显然,A = P N(顺便说一句,请注意,我在实际代码中表示为“ N”的是变量“ w”.)

通过算术级数,A = n *(n 1)/ 2.因此,正如您所说,行min(w,(n 1)* n / 2-w)实际上返回N或P(= A-N),取最小值.

但是现在看一下我下面粘贴的代码的最后一行.因此分子是min(N,P)-A / 2.

现在,如果N为最小值,则返回N-(P N)/ 2,等于-(P-N)/ 2.

但是,如果P为最小值,则返回P-(P N)/ 2,等于-(N-P)/ 2.

因此,无论哪种情况,它实际上都将返回正和负秩和的绝对差(的负值),正像先前以简化形式发布的一样,

| Sum{ sign(Xi) rank(|Xi|) } |

顺便说一句.他们之所以使用绝对差的负数,原因很简单,它使他们免于以后不得不寻找互补的cfd.

signrank代码的片段,以供参考.

w = sum(tierank(neg));

w = min(w, n*(n+1)/2-w);

...

z = (w-n*(n+1)/4) / sqrt((n*(n+1)*(2*n+1) - tieadj)/24);

编辑:

为什么它具有绝对价值?为了使z具有渐近正态性,难道不应该采用绝对值吗?

我的理解是,这实际上不是正常的,而是“折叠正常”的.即,折叠成正半平面.这就是为什么p值计算为

p = 2*(1 - normcdf(z,0,1));

(在旁边).我知道,在实际代码中,他们使用负数“ z”来避免在那里需要cdf-complement,但这是同一回事.

p值乘以2以说明折叠分布.方便地,这也与将其称为“两尾” p值完全相同.

考虑一下如果不使用绝对值会发生什么情况.假设我们采用P-N且N大于P.在这种情况下,p值2 *(1-normcdf(z,0,1))的值将大于1,所以这不是一个好主意. ?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值