Intersection(A,B) not working for date
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
I have A and B date vectors. I want to extract the common dates from both. I used:
[C,ia, ib]=intersection(A,B)
But it is giving me extremely few results than expected. Any solution?
0 comentarios
Respuesta aceptada
Ingrid
el 2 de Jun. de 2015
you should use a round before using using intersection to avoid floats not being equal to each other. If the dates are distinguishably by day (i.e. no hours given) you could use this
[C,ia, ib]=intersection(round(A),round(B))
1 comentario
Guillaume
el 2 de Jun. de 2015
Editada: Guillaume
el 2 de Jun. de 2015
This answer would be more or less correct if the OP was using date numbers. But for accuracy down to the second, I would actually multiply the date numbers by 24x3600 before rounding.
As the OP is using date vectors though, Star's answer is the correct one.
Más respuestas (1)
Star Strider
el 2 de Jun. de 2015
Since date vectors are row vectors, use the 'rows' option with intersect:
[C,ia, ib]=intersect(A,B,'rows');
0 comentarios
Ver también
Categorías
Más información sobre Time Series Objects en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!