【发布时间】:2015-11-20 05:43:29
【问题描述】:
我正在尝试在 Matlab 中执行两个数组的交集,但我找不到方法。
我要相交的数组是:
和
我试过了:[dur, itimes, inewtimes ] = intersect(array2,char(array1));
但没有运气。
但是,如果我尝试将 array1 与 array3 相交(请参阅下面的 array3),[dur, itimes, inewtimes ] = intersect(array3,char(array1));该相交会在没有任何错误的情况下执行。
为什么我不能将 array1 与 array2 相交?,我该怎么做?。谢谢。
【问题讨论】:
-
首先:将图像转换为实际的编码文本,使实际尝试您的代码更容易。第二:由于您使用的是时间,因此使用 datenum 或 datevec 将日期/时间转换为数字会使比较容易得多。
-
嗯,试试 Array2 = Array2{:};
-
@GameOfThrows: 如果我尝试 Array2=Array2{:};结果,我得到了一个 1x1 元胞数组。
-
@A.Visser:我已将 datenum 函数应用于 array1,然后我尝试与数组相交,但它也不起作用:-(.
-
你的问题是Arrays的格式不一样,你想把它们统一起来,可以通过cellstr(Array1) cellstr(Array2)把所有东西都变成CellArrays,然后相交。
标签: arrays matlab cell duration intersect