EDA365电子论坛网

标题: 有两列数,Matlab如何让第二列数随着第一列的升序排列? [打印本页]

作者: li205212021    时间: 2022-9-29 13:45
标题: 有两列数,Matlab如何让第二列数随着第一列的升序排列?
我有两列数,是一一对应的,我现在需要将第一列升序排列,然后第二列数,随着对应的第一列数,排列,如:4 L/ S, t% G) B. ]* l
* }( W" P/ [7 `4 ~
1  7
: i' s" ^! x$ L8 k5  9
7 K" Y. l6 \3 z8 {3 N8 S8  12 `, M8 g* U2 `8 d* H. b( H
3  2
  S# i2 ]2 G5 W  [.* t0 w# \* z8 {  e  G/ \
.
: n- ]7 k  @- g9 v4 j: E.  _" |# j# k" }$ y! i  _
当第一列排列成8 p1 C1 u/ p) T, ^; X; H

. ~- h, X+ l2 r! \( c; x7 M4 a# o, ~1; z* H2 @$ R1 G9 Q5 n  d- P
3! z. b7 U/ p1 D$ z; \
5( F1 q3 Y  J& _- ?
8
7 b/ ~( k/ q- w, C' k4 @时,我希望第二列数是原来的与之对应的:
4 H" T0 b* u& k  R5 ^  r! J( Q. o3 U- \( C* |
1  7
4 b( W( B$ c- B3  2# F5 [/ F% O; O/ |/ \% ~: s
5  91 R' k- u6 {0 }; ?+ |% B
8  12 @' v9 x" H1 I- f; U  u4 A

作者: purpose_857    时间: 2022-9-29 14:48
sort函数应该可以输出两个变量的。, U* w) G. p, k1 G
[data,ind] = sort(..);( p! l' u$ V0 ~0 A# k7 f8 [
ind就是相应的下标的变化情况,然后使用这个下标对第二列操作就行了。
作者: I_believe    时间: 2022-9-29 15:20
b=sortrows(a,1)  %将矩阵a按照第一列的升序排列,其他列不会作升序排列,而是将跟随着第一列 的变化,保持一一对应。
作者: peerless2021    时间: 2022-9-29 15:28
[temp ind]=sort(a(:,1));
  K8 w5 U, D+ r3 G+ eb=a(ind,:  );
1 v/ F" X2 B0 G- a" b
/ y: A$ k; a/ S; K) Z6 f手头没有matlab,自己试验




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2