フィルターのクリア

How to compare two proportions ?

29 ビュー (過去 30 日間)
laurie
laurie 2014 年 3 月 19 日
回答済み: laurie 2014 年 3 月 20 日
I have a vector of x1=[0 1 1 0 1 0 ... 1 0 1] and a cell array of string x2={'Condition A' 'Condition A' 'Condition B'..... 'Condition A' 'Condition B' 'Condition B' 'Condition A}.
How can I test if the proportion of "1" is different in Condition A versus Condition B ?
I tried using crosstab() but I am unsure how to set up the data. It looks like crosstab(x1,x2) expects x1 and x2 to be grouping variables. The x1 I have is a response variable.
How should i set up my data for crosstab? Is there another function which would take counts or a binary response variable? Maybe an equivalent of the R function prop.test() ?

採用された回答

laurie
laurie 2014 年 3 月 20 日
Since I could not find a build-in function for my purpose I ended up writing this little function: http://www.mathworks.com/matlabcentral/fileexchange/45966-compare-two-proportions-chi-square

その他の回答 (1 件)

dpb
dpb 2014 年 3 月 19 日
Start by simply converting the ASCII to another logical array of 0/1...
xA=ismember(x2,'Condition A'); % swap 'B' for 'A' if sense is other way in x1; you don't say
then compute the estimated p for the two populations as
p=[sum(x1) sum(xA)]/length(x1); % assuming same length; if not use each length of course
To test the null hypothesis the two are the same, see--
for method. Not positive if Matlab has a builtin test or not but it's surely not complicated.

カテゴリ

Help Center および File ExchangeHypothesis Tests についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by