chi2gof two sample test for integer arrays of different sizes?
Ältere Kommentare anzeigen
Hey all,
I have 2 integer arrays, one of size 1x25 and the other of 1x26. I have been told to use the chi squared test in order to find how statistically different my data is. But I don't know how to do this, with ttest you could just do ttest2(Arr1, Arr2). Can someone please help me out, thanks!
Antworten (5)
Wayne King
am 21 Jun. 2012
chi2gof is for one sample. You can test each vector separately against a specific distribution, but not against each other.
x = randn(100,1);
[h,p] = chi2gof(x,'cdf',@normcdf)
y = rand(100,1);
[h1,p1] = chi2gof(y,'cdf',@normcdf)
You see in the second case you reject the null hypothesis.
Are you just looking for a nonparametric two-sample test? How about ranksum()?
Annick van der Hoest
am 21 Jun. 2012
0 Stimmen
Wayne King
am 21 Jun. 2012
You can certainly specifiy a discrete distribution to use with chi2gof, by specifing the bins (edges) and expected counts.
Now that you have described your use case more, it sounds to me like you may want crosstab() . crosstab() uses a chi-square test for independence of two samples.
For example:
x1 = unidrnd(3,50,1);
x2 = unidrnd(3,50,1);
[table,chi2,p] = crosstab(x1,x2)
See:
for example.
Annick van der Hoest
am 21 Jun. 2012
0 Stimmen
2 Kommentare
Wayne King
am 21 Jun. 2012
yes, I think you need to use equal sample sizes. I don't know your data, so I can't suggest a principled way to make the sample sizes equal.
Annick van der Hoest
am 21 Jun. 2012
Lucjan
am 4 Dez. 2014
0 Stimmen
It is not correct direction. Crosstab assumes there is a meaning for a pair (x,y) that is why it needs the same number of samples. You are calling for two sample chi-square distribution, which, as far as I chucked, is not implemented in MATLAB. But you should be able to implement it by yourself based on: http://www.itl.nist.gov/div898/software/dataplot/refman1/auxillar/chi2samp.htm
Kategorien
Mehr zu Chi-Square Distribution finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!