Find the earliest common date and indicator of two date vectors.
조회 수: 12 (최근 30일)
이전 댓글 표시
Hi,
I have got two date vectors: a=[28.02.2019;01.03.2019;04.03.2019;...] and b=[01.03.2019;04.03.2019;...]
How to find the earliest common date (=01.03.2019) and its vector index indicator (for date vector a is 2 and b is 1).
Thank you in advance for any suggestions.
댓글 수: 2
Guillaume
2019년 5월 17일
"I have got two date vectors"
Please use valid matlab syntax for your examples.
In matlab a date vector is a 1x3 or 1x6 vector containing only 1 date.
a = [28.02.2019; 01.03.2019; 04.03.2019];
is not valid matlab syntax. So what do you have?
채택된 답변
추가 답변 (1개)
Rik
2019년 5월 17일
편집: Rik
2019년 5월 17일
This answer assumes you have your dates in a datetime format. If you don't it should be relatively easy to convert to it. If your release is too old to support it, please comment with what release you're using.
a=datetime([2019 2019 2019],[2 3 3],[28 1 4]);
b=datetime([2019 2019 2019],[3 3 5],[1 4 1]);
[common_dates,ind_in_a]=ismember(a,b);
common_dates=a(common_dates);
[first,a_min_ind]=min(common_dates);
a_ind=find(ind_in_a==a_min_ind);
b_ind=find(b==first);
댓글 수: 4
Rik
2019년 5월 17일
I edited my answer. It works now, but it has become messy, so I would suggest you keep using Guillaume's solution.
참고 항목
카테고리
Help Center 및 File Exchange에서 Time Series Objects에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!