Filter löschen
Filter löschen

How do I compare between 10 groups on a Ttest2?

4 Ansichten (letzte 30 Tage)
Yossi Sourugeon
Yossi Sourugeon am 12 Apr. 2016
Bearbeitet: jgg am 12 Apr. 2016
Hello, I have 10 vectors. For each vector, I have to do a Ttest2 with the nine other vectors(nine comparisons for each vector). Any ideas how i can do this? Thanks!

Antworten (1)

jgg
jgg am 12 Apr. 2016
Bearbeitet: jgg am 12 Apr. 2016
Let's suppose you have them labeled v1, v2, ..., v10 and they're the same size n. (If they're not the same size, use a cell array instead.)
Put your vectors in an array:
v = [v1,v2,v3,v4,v5,v6,v7,v8,v9,v10];
Then loop over them:
v = randn(1000,10); %to debug; use the real v here
h = zeros(10,10);
p = zeros(10,10);
for i = 1:10
for j = (i+1):10
[h(i,j),p(i,j)] = ttest2(v(:,i),v(:,j));
end
end
Your values and decisions for tests i,j are in the respective element of h and p.
Notice, you don't actually need to do 9 comparisons from each vector; if you've already compared v1 and v2 you don't need to compare v2 to v1 as well.

Kategorien

Mehr zu Multidimensional Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by