Effacer les filtres
Effacer les filtres

Intersect 2 arrays to find a position

1 vue (au cours des 30 derniers jours)
Inês Mendes
Inês Mendes le 2 Juin 2015
Commenté : Inês Mendes le 2 Juin 2015
I have 3 vectors like these:
hour=[8 8 8 9 9 9]
Minute=[15 30 45 15 30 45]
V=[10 6 5 4 3 11]
How do I intersect the first 2 in order to find the position to extract the value from de V vector.
For example: I want to extract all values starting at 8.45h

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 2 Juin 2015
hour=[8 8 8 9 9 9]
Minute=[15 30 45 15 30 45]
V=[10 6 5 4 3 11]
s='8.45'
ii=cellfun(@str2num,strsplit(s,'.'))
id=find(hour==ii(1) & Minute==ii(2))
out=V(id:end)
  2 commentaires
Jan
Jan le 2 Juin 2015
A simplification:
ii = sscanf(s, '%d.%d')
Inês Mendes
Inês Mendes le 2 Juin 2015
Thank you Azzi and Jan! You helped a lot :)

Connectez-vous pour commenter.

Plus de réponses (1)

Doug
Doug le 2 Juin 2015
I'm not sure if I'm clear on the question, but is this what you have in mind?:
V(hour+Minute/60 >= 8.75)

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by