Azzera filtri
Azzera filtri

Wilcoxon rank sum test

11 visualizzazioni (ultimi 30 giorni)
Mohsen  Davarynejad
Mohsen Davarynejad il 22 Mag 2012
I would like to check if my data is smaller than zero or not. Assume the following example.
A = -1*ones(15,1);
[p, h, Stats] = ranksum(A, zeros(15,1))
z-value < 1.96, So A is statistically smaller than zero. But if change the test like the following:
[p, h, Stats] = ranksum(A, zeros(14,1))
the z-value goes positive. Why is that?
  1 Commento
Oleg Komarov
Oleg Komarov il 22 Mag 2012
MATLAB's ranksum is a two-sided test thus you're not testing for something smaller than zero but different from zero.

Accedi per commentare.

Risposta accettata

the cyclist
the cyclist il 23 Mag 2012
The reason you get a positive z-score for
ranksum(A, zeros(14,1))
is that the z-score is based on ranks of the smaller sample relative to the larger sample. So, it is the ranks of zeros relative to A , and you get higher ranks.
The reason you get a negative z-score for
ranksum(A, zeros(15,1))
is that when the two input vectors have equal sample size, MATLAB arbitrarily bases the z-score on first input (A) relative to the second (zeros), so you get the negative z-score
You can see all this in action if you set a breakpoint inside the ranksum() function. [Lines 70-78 in R2012a.]

Più risposte (0)

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by