表/时间表,消除零列

16个视图(30天)
安迪
安迪 2018年5月20日
编辑: dpb 2018年5月20日
我的回答是:
函数手提式= aRemoveZeroTableColumns (primersTable)
%
%
%
手提式= primersTable;
指数= [];
i = 1:元素个数(primersTable.Properties.VariableNames)
列= primersTable{:,我};
如果所有(列= = 0)
指数=(索引、我);
结束
结束
手提式(:,索引)= [];
结束
有短的解决方案吗?

接受的答案

dpb
dpb 2018年5月20日
编辑:dpb 2018年5月20日
假设因为你比较都为零,表的所有元素是数字,那么简单
手提式= primersTable (:, ~ (primersTable {:,:} = = 0));
会脏……简单的例子,
> > t =表(0(5、1),兰德(5、1),0 (1));%样本表格w / 0列
所有(t > > t (:, ~ {:,:} = = 0))
ans =
5×表1
Var2
_________
0.54
0.93709
0.66096
0.39466
0.25899
> >

更多的答案(0)

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!