wnek28 发表于 2011-7-3 08:25

去掉矩阵连续的多行

若有两列数据 (第一列单调递增,如时间)
将第一列大于200的数据 连同第二列相应值去掉
如何实现呢?
如下是一种方法,但是麻烦啊
假设: P为N行2列矩阵
A=P(:,1);            
B=P(:,2);
A(A>200)=[];      
B((length(A)+1):end)=[];
Q=; %得到新矩阵

ChaChing 发表于 2011-7-3 11:39

本帖最后由 ChaChing 于 2011-7-3 11:40 编辑

回复 1 # wnek28 的帖子

aa=find(P(:,1)>200); Q=P(1:aa(1)-1,:);

还有这个应该发在matlab版块!

wnek28 发表于 2011-7-4 09:34

回复 2 # ChaChing 的帖子

谢谢您ChaChing
Q=P(1:aa(1)-1,:);
等效于
P(aa,:)=[];   
Q=P %去尾巴
呵呵 还是您的简练
页: [1]
查看完整版本: 去掉矩阵连续的多行