making a grouping variable

4 次查看(过去 30 天)
Sarah Yun
Sarah Yun 2019-12-29
回答: Star Strider 2019-12-29
Hello,
I want to make group variable so I can do kruskal-wallis test between two columns of unequal size
% Make 2 columns from data
sales_A = Sales{:,2};
sales_B = Sales{:,3};
% Merge columns
x = [sales_A; sales_B];
% Make grouping variable
group = [1 + zeros(size(A)); 2 + zeros(size(B));
% How I make grouping variable here so I can do kruskal-wallis test?
p = kruskalwallis
Thank you.

回答(1 个)

Star Strider
Star Strider 2019-12-29
Using the illustration in Test for the Same Distribution Across Groups, it would likely be best to create vectors instead of matrices if the group sizes are not equal, for example:
x = [sales_A; sales_B];
group = [ones(size(sales_A)); 2*ones(size(sales_B))];
Since ‘Sales’ appears to be a cell array of column vectors, I am assuming that ‘x’ and ‘group’ will both be column vectors as well. (Change this and the code if my guess is incorrect.)
To use a matrix argument, both columns need to have the same row size, and since they are apparently not the same size, a matrix will not work here. They have to be vectors, creating a new vector.
I cannot test this without ‘Sales’, so I am posting it as UNTESTED CODE.

类别

Help CenterFile Exchange 中查找有关 Hypothesis Tests 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by