How can I write "words" and time format in a matrix ?

1 vue (au cours des 30 derniers jours)
zeezo
zeezo le 27 Sep 2017
Commenté : Walter Roberson le 27 Sep 2017
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 commentaires
Jan
Jan le 27 Sep 2017
Modifié(e) : Jan le 27 Sep 2017
It depends on what you want DT to be. A datetime vector?
What does this mean:
As I write on the code how can I make the code to type ' no delay'
and write time format?
zeezo
zeezo le 27 Sep 2017
It was a mistake. I edit the question and I forget to delete it.

Connectez-vous pour commenter.

Réponses (2)

Jan
Jan le 27 Sep 2017
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
  1 commentaire
zeezo
zeezo le 27 Sep 2017
Thank you I will try it. and I will get back :)

Connectez-vous pour commenter.


Walter Roberson
Walter Roberson le 27 Sep 2017
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 commentaires
zeezo
zeezo le 27 Sep 2017
How can I construct table objects?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Numeric Types 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