How to add a matrix vertically and nest an if loop
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi, i have a vector OxygenT = [0 5] and i want to add [0 5] to the next row so that i get 0 5
0 10
. .
. .
and i want it to continue until it equals the length of vector Oxygen below
Oxygen = 21.9599
22.6469
22.4288
19.0584
21.8578
24.4726
24.0144
19.7079
22.6187
24.2526
19.1982
23.0555
21.2375
19.7511
22.3351
20.9603
21.7795
19.3307
23.0599
Since i am dealing with time, how can i nest my loop such that when minutes(2nd column) reach 60 then 1 hour is added to column 1
Below is my code but when i run the code i only get 2 rows and it doesn`t add up until length of Oxygen. Please help
OxygenT = [0 5]
if length(OxygenT) <= length(Oxygen)
secondtime_interval = [OxygenT + OxygenT]
Oxygentime=[OxygenTime;secondtime_interval]
end
댓글 수: 0
채택된 답변
Guillaume
2020년 3월 31일
Using a loop for this would be pointless and unnecessary complicated
Oxygenminute = (1:numel(Oxygen))' * 5;
Oxygenhour = floor(Oxygenminute/60);
Oxygenminute = mod(Oxygenminute, 60);
Oxygentime = [Oxygenhour, Oxygenminute]
An even better solution is to use a duration type instead of splitting the time over two columns:
Oxygentime = minutes(5) * (1:numel(Oxygen))';
Oxygentime.Format = 'hh:mm'
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!