Combinar fechas y horas de variables separadas
Este ejemplo muestra cómo leer datos de fecha y hora de un archivo de texto. Después, muestra cómo combinar fechas y horas almacenadas en variables separadas en una única variable de fecha/hora.
Cree un archivo de texto delimitado por espacios llamado schedule.txt
que contenga lo siguiente (para crear el archivo, utilice cualquier editor de texto y copie y pegue los datos):
Date Name Time 10.03.2015 Joe 14:31 10.03.2015 Bob 15:33 11.03.2015 Bob 11:29 12.03.2015 Kim 12:09 12.03.2015 Joe 13:05
Lea el archivo mediante la función readtable
. Utilice el especificador de conversión %D
para leer la primera y la tercera columna de datos como valores de fecha/hora.
T = readtable('schedule.txt','Format','%{dd.MM.uuuu}D %s %{HH:mm}D','Delimiter',' ')
T = Date Name Time __________ _____ _____ 10.03.2015 'Joe' 14:31 10.03.2015 'Bob' 15:33 11.03.2015 'Bob' 11:29 12.03.2015 'Kim' 12:09 12.03.2015 'Joe' 13:05
readtable
devuelve una tabla que contiene tres variables.
Cambie el formato de visualización para las variables T.Date
y T.Time
de forma que se muestre la información de fecha y de hora. Dado que los datos de la primera columna del archivo ("Date") no tienen información sobre la hora, la hora de los valores de fecha/hora resultantes en T.Date
pasa a medianoche de forma predeterminada. Dado que los datos de la tercera columna del archivo ("Time") no tienen fecha asociada, la fecha de los valores de fecha/hora en T.Time
también pasa a la fecha actual de forma predeterminada.
T.Date.Format = 'dd.MM.uuuu HH:mm'; T.Time.Format = 'dd.MM.uuuu HH:mm'; T
T = Date Name Time ________________ _____ ________________ 10.03.2015 00:00 'Joe' 12.12.2014 14:31 10.03.2015 00:00 'Bob' 12.12.2014 15:33 11.03.2015 00:00 'Bob' 12.12.2014 11:29 12.03.2015 00:00 'Kim' 12.12.2014 12:09 12.03.2015 00:00 'Joe' 12.12.2014 13:05
Combine la información de fecha y de hora de dos variables de tabla diferentes añadiendo T.Date
y los valores de hora en T.Time
. Extraiga la información de hora de T.Time
con la función timeofday
.
myDatetime = T.Date + timeofday(T.Time)
myDatetime = 10.03.2015 14:31 10.03.2015 15:33 11.03.2015 11:29 12.03.2015 12:09 12.03.2015 13:05