HOW TO SORT INTO GROUPS

16 views (last 30 days)
Pat
Pat on 17 Sep 2011
I have values
col1 col2
1 9
2 4
3 5
4 6
5 1
6 9
7 0
8 3
9 1
0 2
I WANT TO DIVIDE THIS INTO 5 GROUPS MY OUTPUT IS
1 9 3 5 5 1 7 0 9 1
2 4 4 6 6 9 8 3 0 2
PLEASE CAN ANYONE HELP
  2 Comments
Fangjun Jiang
Fangjun Jiang on 17 Sep 2011
Please format your code and explain what is the grouping.
the cyclist
the cyclist on 17 Sep 2011
Pat, please try to imagine yourself as a reader who knows nothing about your problem. It is impossible to understand what you want to do. Please provide more detail.

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 17 Sep 2011
out = reshape(permute(reshape(a,2,[],2),[1,3,2]),2,[])
  2 Comments
Pat
Pat on 19 Sep 2011
a=[1 9
2 4
3 5
4 6
5 1
6 9
7 0
8 3
9 1
0 2
3 6
3 4
3 7
8 1
8 7
9 2
0 3
4 6
5 7
8 9 ]
i want to divide this data into 5 groups so taht the values in the column 1 and 2 should not change....... have to do this for large data also,can anyone help
Jan
Jan on 19 Sep 2011
@Pat: As mentioned before, it is not clear how the groups are distinguished. I do not see the connection between "The values in the column 1 and 2 should not change" and the example data in your question. Please explain the rule you want to implement.
But you've accepted an answer already. This means, that the posted code solved your problem. Sure?

Sign in to comment.

More Answers (1)

Fangjun Jiang
Fangjun Jiang on 17 Sep 2011
a=[1 9
2 4
3 5
4 6
5 1
6 9
7 0
8 3
9 1
0 2 ];
b=mat2cell(a,repmat(2,size(a,1)/2,1),size(a,2));
c=cell2mat(b');
  2 Comments
Jan
Jan on 18 Sep 2011
@Fangjun: Pat asks for 5 groups, but he showed 6 groups. Your code replies a {2 x 10} cell.
Fangjun Jiang
Fangjun Jiang on 18 Sep 2011
I see! Then b or b' should be the outcome.
The OP doesn't seem to be responsive at all based on his history.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!