matlab从对象(数组)列表中删除冗余对象
在matlab或scilab中,如何删除数组对象列表中的冗余项?也许把它保存为矩阵 例如:matlab从对象(数组)列表中删除冗余对象,matlab,list,unique,scilab,Matlab,List,Unique,Scilab,在matlab或scilab中,如何删除数组对象列表中的冗余项?也许把它保存为矩阵 例如: p = list(); p(1) = ['a' 'b' 'c']; p(2) = ['a' 'b' 'c']; p(3) = ['b' 'a' 'c'] 例如,从上面提到的列表开始,我想得到一个列表q as q(1) = ['a' 'b' 'c']; q(2) = ['b' 'a' 'c']; unique函数仅适用于数组,而不适用于数组列表。我可以通过查看所有矩阵来手动执行此操作,但效率不高。我不知
p = list();
p(1) = ['a' 'b' 'c'];
p(2) = ['a' 'b' 'c'];
p(3) = ['b' 'a' 'c']
例如,从上面提到的列表开始,我想得到一个列表q as
q(1) = ['a' 'b' 'c'];
q(2) = ['b' 'a' 'c'];
unique函数仅适用于数组,而不适用于数组列表。我可以通过查看所有矩阵来手动执行此操作,但效率不高。我不知道为此任务设计的内置函数,我怀疑没有。我认为有四种选择:
unique
做一些事情。不幸的是,当您尝试执行例如p(:)(2)
,好像要提取每个列表项的第二个元素时,您得到的不是在scilab中实现的…
q=['a'b'c';'d'e'f']
然后你可以做像这样的事情
q(:,2)
“多余条目”是什么意思?您正在寻找
独特的
功能吗?也许你可以显示“我认为这是一个多余的条目”-我们不能读你的想法…通常情况下,“如果我从这个开始,我想以那个结束”的表述方式(以及“这就是我尝试过的”)是获得有用答案的好方法。谢谢你的评论。我明白你的意思了,我要更新我的问题。现在更清楚了!我会给它一些思考-这是一个有点不同于我通常使用Matlab。。。你试过玩ismember吗?我没试过,但我想ismember可以在片场上运行。我想我可以试着在一个循环中使用它,但它仍然是低效的。是的。似乎没有内置的函数来执行此操作。我正在考虑一个函数,它将数组列表转换为2d矩阵。如果有这样的函数,那么我可以在它的行上使用'unique'函数。。。