我的矩阵有一个列,里面有时间-时间是以毫秒为单位的(从午夜开始的毫秒-但不用担心这个)。
我需要识别时间比矩阵中的最后一次少5秒的行,这是因为我要循环矩阵,并查看提前5秒的数据,所以我需要知道在哪里结束我的for i=1:矩阵中的行减去最后5秒的位置,所以如果向前看5秒,我们不会超过矩阵的维度。
让我们假设时间在矩阵的第2列,我们有行,列=大小(矩阵)
矩阵中的最后一个时间戳是(rows,2),并返回自午夜以来的时间(以毫秒为单位),例如53997401,因此前5秒,或者我的标记为(53997401-5000)
因此,我希望在矩阵中查找在上述数字之前的最后一次或搜索向下矩阵(:,2),并返回其中(xxx,2)小于( coloumn2 (rows,2)-5000)的行
即使它返回coloum2小于(矩阵( rows,2)-5000)的所有行的新向量,我们也可以获得该向量的大小,以查看满足我们条件的最后一行是什么
简单地说,在这里查看并返回ans <例如53997364的行,即返回值为4
53984704
53991775
53992283
53992283
53997367
53997367
53997367
53997367
53997401
53997401发布于 2013-07-23 21:34:08
对于您的样本向量(让我们称之为t):
find(t < t(end) - 5000, 1, 'last')
ans = 4对于完整的矩阵,它几乎是相同的:
find(matrix(:,2) < matrix(end,2) - 5000, 1, 'last')https://stackoverflow.com/questions/17811300
复制相似问题