how to sort rows

1 回表示 (過去 30 日間)
andrew
andrew 2014 年 1 月 29 日
回答済み: Azzi Abdelmalek 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 Center および File ExchangeShifting and Sorting Matrices についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by