gpt4 book ai didi

matlab - 从矩阵matlab中删除零列和行

转载 作者:太空宇宙 更新时间:2023-11-03 19:27:37 24 4
gpt4 key购买 nike

我想从一个大矩阵中删除一些列和行。这些是全零值的列和行。 MATLAB 中是否有任何函数可以为您快速完成此操作?我的矩阵很稀疏。我这样做:

 % To remove all zero columns from A
ind = find(sum(A,1)==0) ;
A(:,ind) = [] ;

% To remove all zeros rows from A
ind = find(sum(A,2)==0) ;
A(ind,:) = [] ;

最好有一行代码来解决这个问题,因为我可能会重复执行此类任务。谢谢

最佳答案

单行代码为:

A=A(any(A,2),any(A,1))

不需要像你那样使用find,可以直接使用逻辑向量进行索引。 any 函数查找具有任何非零元素的行或列。

关于matlab - 从矩阵matlab中删除零列和行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35406444/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com