テキスト ファイルからの日付と時刻のインポート
書式設定済みの日付と時刻 ('01/01/01' や '12:30:45' など) を列方向の表形式データから 3 つの方法でインポートします。
インポート ツール— 日付と時刻を対話的に選択してインポートします。
関数
readtable— 日付と時刻を含む変数を自動的に検出して、table にインポートします。インポート オプション — 日付と時刻の変数のインポートをより詳細に制御するために、関数
readtableを関数detectImportOptionsとともに使用します。たとえば、FillValueやDatetimeFormatなどのプロパティを指定できます。
この例では、これらの各メソッドを使用して、テキスト ファイルから日付と時刻をインポートする方法を説明します。
インポート ツール
インポートツールを使用して outages.csv ファイルを開きます。各列のドロップダウン メニューを使用して、日付と時刻の形式を指定します。あらかじめ定義されたデータ形式から選択するか、カスタム形式を入力します。OutageTime 列をインポートするために、カスタム形式 yyyy-MM-dd HH:mm を指定します。次に、[選択のインポート] ボタンをクリックして、ワークスペースにデータをインポートします。

関数 readtable
関数 readtable を使用して、変数 OutageTime の 10 行を表示します。readtable によって日付と時刻の変数と形式が自動的に検出されます。
filename = 'outages.csv';
T = readtable(filename);
T.OutageTime(1:10)ans = 10×1 datetime
2002-02-01 12:18
2003-01-23 00:49
2003-02-07 21:15
2004-04-06 05:44
2002-03-16 06:18
2003-06-18 02:49
2004-06-20 14:39
2002-06-06 19:28
2003-07-16 16:23
2004-09-27 11:09
インポート オプション
インポート オプション オブジェクトを使用して、日付と時刻の変数のインポートをより詳細に制御します。たとえば、日付と時刻の表示形式を変更したり、欠損している日付の埋め込み値を指定したりします。
outages.csv ファイルのインポート オプション オブジェクトを作成し、変数 RestorationTime の変数インポート オプションを表示します。関数 detectImportOptions は、変数のデータ型を自動的に検出します。
opts = detectImportOptions(filename);
getvaropts(opts,'RestorationTime')ans =
DatetimeVariableImportOptions with properties:
Variable Properties:
Name: 'RestorationTime'
Type: 'datetime'
FillValue: NaT
TreatAsMissing: {}
QuoteRule: 'remove'
Prefixes: {}
Suffixes: {}
EmptyFieldRule: 'missing'
Datetime Options:
DatetimeFormat: 'preserveinput'
DatetimeLocale: 'en_US'
InputFormat: ''
TimeZone: ''
データをインポートし、変数 RestorationTime の最初の 10 行を表示します。2 番目の行には NaT が含まれ、日付と時刻の値が欠けていることが示されます。
T = readtable(filename,opts); T.RestorationTime(1:10)
ans = 10×1 datetime
2002-02-07 16:50
NaT
2003-02-17 08:14
2004-04-06 06:10
2002-03-18 23:23
2003-06-18 10:54
2004-06-20 19:16
2002-06-07 00:51
2003-07-17 01:12
2004-09-27 16:37
日付と時刻の別の表示形式を使用するには、DatetimeFormat プロパティを更新したうえで、FillValue プロパティを使用して欠損値を現在の日付と時刻に置き換えます。更新された変数オプションを表示します。
opts = setvaropts(opts,'RestorationTime', ... 'DatetimeFormat','MMMM d, yyyy HH:mm:ss Z',... 'FillValue','now'); getvaropts(opts,'RestorationTime')
ans =
DatetimeVariableImportOptions with properties:
Variable Properties:
Name: 'RestorationTime'
Type: 'datetime'
FillValue: July 13, 2025 20:09:50 *
TreatAsMissing: {}
QuoteRule: 'remove'
Prefixes: {}
Suffixes: {}
EmptyFieldRule: 'missing'
Datetime Options:
DatetimeFormat: 'MMMM d, yyyy HH:mm:ss Z'
DatetimeLocale: 'en_US'
InputFormat: ''
TimeZone: ''
更新されたインポート オプションを使用してデータを読み取り、変数の最初の 10 行を表示します。
T = readtable(filename,opts); T.RestorationTime(1:10)
ans = 10×1 datetime
February 7, 2002 16:50:00 *
July 13, 2025 20:09:50 *
February 17, 2003 08:14:00 *
April 6, 2004 06:10:00 *
March 18, 2002 23:23:00 *
June 18, 2003 10:54:00 *
June 20, 2004 19:16:00 *
June 7, 2002 00:51:00 *
July 17, 2003 01:12:00 *
September 27, 2004 16:37:00 *
datetime 変数のオプションの詳細については、setvaropts のリファレンス ページを参照してください。
参考
インポート ツール | readtable | detectImportOptions | setvaropts | readmatrix | readcell | readvars | readtimetable