MATLAB Answers

Search a date from a datetime to another with different length

1 view (last 30 days)
Hello, i have a datetime table A(2000,1) and a second one B(500,1). I want to search at table B if there is a date from table A or if there is the next day. If the condition is met i put in a third table with the name flag the value 1. I have tried this:
for i=1:length(A)
if A(i,1)==B(:,1) || A(i,1) +caldays(1)==B(:,1)
flag(i,:)=1;
end
end
But i have the error 'Operands to the || and && operators must be convertible to logical scalar values'
Any idea?

Accepted Answer

the cyclist
the cyclist on 9 Sep 2021
The result of the operation
A(i,1)==B(:,1)
is a vector, as is the result of the other equality check you do. You can only use || to compare scalars -- just as the error says. Instead, I think you want
any(A(i,1)==B(:,1) | A(i,1) +caldays(1)==B(:,1))
which will evaluate to true if any of the elements of B match up as you want.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!