Filter löschen
Filter löschen

Wilcoxon rank sum test

11 Ansichten (letzte 30 Tage)
Mohsen  Davarynejad
Mohsen Davarynejad am 22 Mai 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 Kommentar
Oleg Komarov
Oleg Komarov am 22 Mai 2012
MATLAB's ranksum is a two-sided test thus you're not testing for something smaller than zero but different from zero.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

the cyclist
the cyclist am 23 Mai 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.]
  1 Kommentar
Mohsen  Davarynejad
Mohsen Davarynejad am 23 Mai 2012
Ahhh, Yes, Thanks Cyclist!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by