個別の変数からの日付と時刻の結合
この例では、テキスト ファイルから日付と時刻のデータを読み取る方法を説明します。さらに、個別の変数に保存された日付と時刻の情報を 1 つの 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
を使用してデータの 1 列目と 3 列目を 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
は 3 つの変数を含む table を返します。
変数 T.Date
および T.Time
の表示形式を変更して日付と時刻の両方が表示されるようにします。ファイルの 1 列目 ("Date") には時刻の情報がないため、T.Date
の datetime 値は既定の午前 0 時になります。ファイルの 3 列目 ("Time") には関連付けられた日付がないため、T.Time
の datetime 値は既定の現在の日付になります。
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
の時刻の値を加えて 2 つの異なるテーブル変数からの日付と時刻の情報を結合します。関数 timeofday
を使用して T.Time
から時刻情報を抽出します。
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