How can I write "words" and time format in a matrix ?
조회 수: 1 (최근 30일)
이전 댓글 표시
I have this code
m=0.5
A = poissrnd(m, 24, 1);
for i=1:24;
if A(i,:)== 0;
DT(i,:)= 00:00:00; % I want it to be on time format, 00:00:00 How??
elseif 10>=A(i,:)>0;
DT(i,:)= 00:00:10; % I want it to be on time format , 00:00:10
else A(i,:)>10;
DT(i,:)=00:00:20; % I want it to be on time format, 00:00:20
end
end
As I write on the code how can I make the code to write time format?
Thank you you very much
댓글 수: 2
답변 (2개)
Jan
2017년 9월 27일
sec = zeros(size(A));
sec(0 < A & A <= 10) = 10;
sec(A > 10) = 20;
DT = datetime(0, 0, 0, 0, 0, sec, 'Format', 'HH:mm:ss');
Note:
elseif 10 >= A(i,:) > 0
This will not do, what you expect. Matlab evaluates this from left to right. In the first step 10 >= A(i, :) replies a logical vector, which contains TRUE or FALSE. Then TRUE > 0 or FALSE > 0 is calculated. You mean:
elseif 10 >= A(i,:) && A(i, :) > 0
Walter Roberson
2017년 9월 27일
It is not possible to put strings or datetime items into a numeric array.
You can construct cell arrays, or you can construct table objects.
댓글 수: 2
참고 항목
카테고리
Help Center 및 File Exchange에서 Numeric Types에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!