# how to sort rows

2 views (last 30 days)
andrew on 29 Jan 2014
Answered: Azzi Abdelmalek on 29 Jan 2014
I have a dataset with the following in a column with data
• (1,A1)
• (1,B1)
• (1,C1)
• (1,A2)
• (1,B2)
• (1,C2)
• (1,A3)
• (1,B3)
• (1,C3)
How do I sort the column so that the out come is:
• (1,A1)
• (1,A2)
• (1,A3)
• (1,B1)
• (1,B2)
• (1,B3)
• (1,C1)
• (1,C2)
• (1,C3)
##### 3 CommentsShowHide 2 older comments
Walter Roberson on 29 Jan 2014
Is it a cell array of strings, or is it an N x 2 cell array with the first column numeric and the second column something else ?

Sign in to comment.

### Answers (2)

Amit on 29 Jan 2014
sort(M)
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

Azzi Abdelmalek on 29 Jan 2014
M={'(1,A1)'
'(1,B1)'
'(1,C1)'
'(1,A2)'
'(1,B2)'
'(1,C2)'
'(1,A3)'
'(1,B3)'
'(1,C3)'}
%M='(1,A1)'
c1=cellfun(@(x) x{1},regexp(M,'(?<=\().+(?=\,)','match'),'un',0)
c2=cellfun(@(x) x{1},regexp(M,'(?<=\,).+(?=\))','match'),'un',0)
[idx,idx]=sort(c2)
out=M(idx)
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!