Index satisfying multiple conditions
이전 댓글 표시
Hi, I have a matrix with 4 columns of Year, Month, Hour, Speed. I would like to extract the data from just month 1, month 11 and month 12. My code is as below:
Wind_All = [year month day speed];
loc = find(Wind_All(:,2)==1 & Wind_All(:,2)>=11);
YEAR = [year(loc(1):max(loc))];
MONTH = [month(loc(1):max(loc))];
DAY = [day(loc(1):max(loc))];
SPEED = [speed(loc(1):max(loc))];
However, it's giving me an error message:
Index exceeds matrix dimensions. Error in Speed_Bin6 (line 34); YEAR = [year(loc(1):max(loc))];
Can someone tell me what I did wrong there? It works if it's:
loc = find(Wind_All(:,1)==2015 & Wind_All(:,2)>=11); &&indexing year 2015 and month 11 and 12.
Thank you!
채택된 답변
추가 답변 (1개)
Elias Gule
2018년 3월 28일
0 개 추천
Just replace the '&' with '|'. Because you want the value in column 2 where the month is 1 or where the month is greater or equal to 11.
카테고리
도움말 센터 및 File Exchange에서 Matrix Indexing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!