Clear Filters
Clear Filters

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

2 views (last 30 days)
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.

Answers (3)

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

Akira Agata
Akira Agata on 13 Feb 2018
Another way:
x = rand(5000,1);
g = repelem(1:100,50)';
avg = splitapply(@mean,x,g);
  1 Comment
Mohamed Saleh
Mohamed Saleh on 13 Feb 2018
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.

Sign in to comment.


Image Analyst
Image Analyst on 13 Feb 2018
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 Comment
Mohamed Saleh
Mohamed Saleh on 13 Feb 2018
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.

Sign in to comment.

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!