EDA365电子论坛网
标题:
Matlab矩阵处理
[打印本页]
作者:
elephant_
时间:
2022-10-8 11:16
标题:
Matlab矩阵处理
大家好!我现在有个几千行的矩阵,按照第一列的ID从大到下进行排列得到的,现在想把第一列ID数量小于20的ID删除掉,请问怎么样才可以做到
& @* q5 d8 m7 {+ m) K
谢谢大家!
9 Y( \' E4 x/ M* @
例如:data = [1 2 2;1 0 2;2 1 4;2 3 6;2 5 6;3 2 1;3 6 5;3 7 8;3 6 4]
' @& l0 E2 `/ {' { X
, Y) Z, r t& ^$ V
data =
) x0 `( E' V& a8 c8 ~) \
( j; d4 z5 X2 t$ H: j2 l; Z
1 2 2
$ w& `+ Q) q/ i( G+ C8 V4 f5 K4 m, [: G
1 0 2
; ?9 t, h( M0 Z1 a
2 1 4
) b! b, _5 a9 i; t1 F' f" |
2 3 6
@4 h6 {0 c, K0 F$ @( s& W) Y
2 5 6
* \# Q$ E$ Y/ v2 r! o2 q. K
3 2 1
: P; P# t3 A i
3 6 5
3 I. f9 f' x( c
3 7 8
7 v) [; C1 a. F' w+ K# [
3 6 4
1 V d' x/ {" [1 U! T" t% V
将第一列数量小于3的行删除掉,变成
5 ]# M; u7 S: f1 |; g2 ^
data =
" P7 P" x' c7 T& {3 Q
$ N$ \* n7 b- G) g0 p; O
2 1 4
- X, d4 d5 x* H0 K# [/ I7 [) X
2 3 6
3 }- u) i1 {6 B3 b7 U& ?/ Y/ J
2 5 6
! R2 y, ]+ ^# f+ Z! F
3 2 1
4 a* Z0 Z6 b, L( l$ }
3 6 5
; t! t; Y3 [. R# \5 q* d
3 7 8
$ X; g; b4 b6 n1 g5 D5 ]7 {; s9 e
3 6 4
) B3 ?' F8 n0 T
作者:
purpose_857
时间:
2022-10-8 13:14
程序如下:
* P8 R, c+ n s8 E
clear;clc
data = [1 2 2;1 0 2;2 1 4;2 3 6;2 5 6;3 2 1;3 6 5;3 7 8;3 6 4];
[row,col] = size(data);
index = find(data(:,1)>=3);
dataA = ones(length(index),col);
for i = 1:length(index)
dataA(i,: ) = data(index(i),: );
end
4 H0 n7 z u) Q& A
试试这个程序
: `2 m) s7 I% Y( B. t' k' x
作者:
elephant_
时间:
2022-10-8 13:22
purpose_857 发表于 2022-10-8 13:14
1 J" B9 ]0 \& |; W/ y+ Z
程序如下:
' ?8 F/ d/ o3 Y
clear;clc
5 _% U% W9 s" D$ C* W
dataA(i,: ) = data(index(i),: );
/ _9 S3 p9 R5 H$ y
↑
8 Q) U4 D; ?- u- L6 n% s
Error: Invalid text character. The text '?' contains an unsupported non-ASCII whitespace character.你好,感谢回复,运行出来结果是这样的,请问是什么原因呢
8 w4 `9 l: U; i; R. P
作者:
purpose_857
时间:
2022-10-8 13:28
代码直接粘贴到编辑器里,空格处会出现波浪线,你把波浪线删掉
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2