exponenta event banner

Объединить дату и время из отдельных переменных

В этом примере показано, как считывать данные даты и времени из текстового файла. Затем показано, как объединить информацию о дате и времени, хранящуюся в отдельных переменных, в одну переменную datetime.

Создание текстового файла с разделителями-разделителями schedule.txt который содержит следующее (для создания файла используйте любой текстовый редактор, а также скопируйте и вставьте):

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 функция. Используйте %D спецификатор преобразования для считывания первого и третьего столбцов данных в качестве значений datetime.

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 возвращает таблицу, содержащую три переменные.

Изменение формата отображения для T.Date и T.Time переменные для просмотра информации о дате и времени. Поскольку данные в первом столбце файла («Date») не содержат информации о времени, время результирующих значений datetime в T.Date по умолчанию - полночь. Поскольку данные в третьем столбце файла («Time») не имеют связанной даты, дата значений datetime в T.Time по умолчанию - текущая дата.

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

Объединение данных о дате и времени из двух различных переменных таблицы путем добавления T.Date и значения времени в T.Time. Извлечение информации о времени из T.Time с использованием 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

См. также

|