Intersection(A,B) not working for date
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
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 Commenti
Risposta accettata
Ingrid
il 2 Giu 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 Commento
Guillaume
il 2 Giu 2015
Modificato: Guillaume
il 2 Giu 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.
Più risposte (1)
Star Strider
il 2 Giu 2015
Since date vectors are row vectors, use the 'rows' option with intersect:
[C,ia, ib]=intersect(A,B,'rows');
0 Commenti
Vedere anche
Categorie
Scopri di più su Time Series Objects in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!