char to double data type
Mostrar comentarios más antiguos
How do I convert the following
164x11 char=
'03-Jan-2018'
'07-Jan-2018'
'07-Jan-2018'..
to 164x11 double=
'03-Jan-2018'
'07-Jan-2018'
'07-Jan-2018'
I want the elements to remain the same and just change the data type
2 comentarios
Ameer Hamza
el 24 de Oct. de 2020
No, it is not possible. And why do you want to do that?
Waqas Siddique
el 24 de Oct. de 2020
Respuestas (2)
dpb
el 24 de Oct. de 2020
Deprecated (and not recommended) would be
dn=datenum(yourdatechararray,'dd-mmm-yyyy');
which, of course, returns the datenum associated with the date; to get the representation use datestr. But, dn is a double.
The present (and recommended) way to handle dates is to use datetime instead --
dt=datetime(yourdatechararray,'InputFormat','dd-MMM-yyyy');
NB: the input format string representations are NOT the same between the two.
dt is its own class of datetime array, not a double. But, one can do comparisons of equality, greater/less than, etc., as well as plot and such have been extended to recognize the class as inputs.
4 comentarios
Waqas Siddique
el 24 de Oct. de 2020
Waqas Siddique
el 24 de Oct. de 2020
Walter Roberson
el 24 de Oct. de 2020
fprintf() or compose() -- you will probably find compose() easier.
Steven Lord
el 24 de Oct. de 2020
0 votos
I recommend turning the character data representing dates into a datetime array and using that datetime array along with your double data to create a timetable.
Categorías
Más información sobre Dates and Time en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!