how to sort rows

1 次查看(过去 30 天)
andrew
andrew 2014-1-29
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 个评论
andrew
andrew 2014-1-29
Yes it is a cell array
Walter Roberson
Walter Roberson 2014-1-29
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 ?

请先登录,再进行评论。

回答(2 个)

Amit
Amit 2014-1-29

Azzi Abdelmalek
Azzi Abdelmalek 2014-1-29
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)

类别

Help CenterFile Exchange 中查找有关 Shifting and Sorting Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by