我对MATLAB的ismember函数有一些问题。我有两个不同长度的日期变量,我想比较并找到相似之处:
ismember
所以我使用了ismember(Date1,Date2),但是我得到的逻辑值总是0,即使它是同一个日期。你知道如何纠正这个问题吗?我应该使用ismember以外的函数吗?
ismember(Date1,Date2)
qyuhtwio1#
如果从ismember得到零
TimeP = {'01/01/1981','26/01/1981'}; Date = {'01/01/1981','26/01/1981','20/02/1981','11/02/1981'}; timeIrr = datetime(TimeP,'InputFormat','dd/MM/yyyy'); timeT = datetime(Date, 'InputFormat','dd/MM/yyyy'); ismember(timeT,timeIrr)
就加
dateshift(yourDate,'start','end')
以这种方式:
TimeP = {'01/01/1981','26/01/1981'}; Date = {'01/01/1981','26/01/1981','20/02/1981','11/02/1981'}; timeIrr = datetime(TimeP,'InputFormat','dd/MM/yyyy'); timeT1 = datetime(Date, 'InputFormat','dd/MM/yyyy'); timeT = dateshift(timeT1, 'start', 'day'); ismember(timeT,timeIrr)
输出:
ans = 1×4 logical array 1 1 0 0
1条答案
按热度按时间qyuhtwio1#
如果从ismember得到零
就加
以这种方式:
输出: