How do I compare between 10 groups on a Ttest2?

2 vues (au cours des 30 derniers jours)
Yossi Sourugeon
Yossi Sourugeon le 12 Avr 2016
Modifié(e) : jgg le 12 Avr 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!

Réponses (1)

jgg
jgg le 12 Avr 2016
Modifié(e) : jgg le 12 Avr 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.

Catégories

En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by