Dividing set of data into groups and evaluating the mean of each group

2 次查看(过去 30 天)
Hi. Can any body help me with the following please?. I have a set of random data like x=[-3,-10,-2,...,-7] which is up to let say 5000 values. I need to divide x into set of groups x1, x2, x3, ...,xn, where each group of x has 50 elements. Then I need to evaluate the mean of each group and compare it with the mean of the next group. Thank you in advanced.

回答(3 个)

KSSV
KSSV 2018-2-13
A = rand(5000,1) ;
B = reshape(A,50,[]) ;
mean_B = mean(B,2) ;

Akira Agata
Akira Agata 2018-2-13
Another way:
x = rand(5000,1);
g = repelem(1:100,50)';
avg = splitapply(@mean,x,g);
  1 个评论
Mohamed Saleh
Mohamed Saleh 2018-2-13
It seems like I am not getting the right value for the mean of each group. Actually I want the first group of x has the first 50 values of x then I find the mean for this group. Then the second group of x has the next 50 values of x and find the mean for this group as well and so on.

请先登录,再进行评论。


Image Analyst
Image Analyst 2018-2-13
I'm not sure how you're defining/selecting the values to go into each group, but once you have the groups defined, then you can use grpstats() if you have the Statistics and Machine Learning Toolbox.
  1 个评论
Mohamed Saleh
Mohamed Saleh 2018-2-13
Actually I want the first group of x has the first 50 values of x. Then the second group of x has the next 50 elements and so on.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by