matlab中的多个或语句

时间:2017-02-08 11:29:33

标签: arrays matlab grouping

我有一个问题。我有一个非常大的矩阵,其id值带有值。 我想根据每个组的特定ID对它们进行分组。特定ID在50到150个唯一ID的范围内。 我可以编写一个循环或Or语句,这将完成这个技巧,但速度非常慢,因为每个文件大约2gb。是否有可能使用数组作为Or语句的输入? 例如

   X=find(T.imonumber==9523366 | T.imonumber==6715334 | T.imonumber==6715334.....);

1 个答案:

答案 0 :(得分:0)

您可以使用ismember函数生成逻辑索引,然后使用find将其转换为数字索引。

a = [9523366 , 6715334 ,6715334];
idx = ismember(T.imonumber, a);
x = find(idx);