我有一個已排序的bigmatrix。但是,我需要按照另一個矩陣中的ID順序重新排序(col. 1 here for both matrices
)。我怎樣才能做到這一點使用矢量化?例如:根據第二個矩陣中給出的順序對矩陣進行排序(MATLAB)
bigmat = [ ...
1 10 ;
1 30 ;
1 40 ;
2 1 ;
2 11 ;
3 58 ;
4 2 ;
4 5 ] ;
ordermat = [ 2 ; 1 ; 4 ; 3 ; 6] ; % Integer IDs
finalans = [ ...
2 1 ;
2 11 ;
1 10 ;
1 30 ;
1 40 ;
4 2 ;
4 5 ;
3 58 ; ] ;
這可能是所有的一些的ID(此處整數)在ordermat
可能不會出現在bigmat。如上所示,可以忽略它們,其編號爲id = 6
。謝謝!
你是什麼意思通過矢量化? – Mark
我的意思是沒有在bigmatrix上使用for-loop。我希望解決方案使用「ismember」等功能。Bigmatrix擁有超過50萬行。 – Maddy