Intersect 2 arrays to find a position

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

 採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2015 年 6 月 2 日

0 投票

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 件のコメント

Jan
Jan 2015 年 6 月 2 日
A simplification:
ii = sscanf(s, '%d.%d')
Inês Mendes
Inês Mendes 2015 年 6 月 2 日
Thank you Azzi and Jan! You helped a lot :)

サインインしてコメントする。

その他の回答 (1 件)

Doug
Doug 2015 年 6 月 2 日

1 投票

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)

カテゴリ

ヘルプ センター および File ExchangeResizing and Reshaping Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by