ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

datevec

日付と時刻を成分のベクトルに変換

構文

  • DateVector = datevec(DateNumber)
  • DateVector = datevec(DateString)
  • DateVector = datevec(DateString,formatIn)
  • DateVector = datevec(DateString,PivotYear)
  • DateVector = datevec(DateString,formatIn,PivotYear)
  • [Y, M, D, H, MN, S] = datevec(___)

説明

DateVector = datevec(DateNumber) は、1 つまたは複数の日付値を日付ベクトルに変換します。datevec は、m 個の日付ベクトルを含む m 行 6 列の行列を返します。ここで、m は、DateNumber における日付値の総数です。

DateVector = datevec(DateString) は、日付文字列を日付ベクトルに変換します。日付文字列形式がわかる場合、formatIn を使用します。formatIn なしの構文は、それを含むものに比べて大幅に遅くなります。

DateVector = datevec(DateString,formatIn) は、formatIn を使用して各日付文字列を解釈します。

DateVector = datevec(DateString,PivotYear) は、PivotYear を使用して年が 2 文字で指定されている日付文字列を解釈します。日付文字列形式がわかる場合、formatIn を使用します。formatIn なしの構文は、それを含むものに比べて大幅に遅くなります。

DateVector = datevec(DateString,formatIn,PivotYear) は、formatIn を使用して各日付文字列を解釈し、PivotYear を使用して年が 2 文字で指定されている日付文字列を解釈します。formatIn および PivotYear は、いずれの順序でも指定できます。

[Y, M, D, H, MN, S] = datevec(___) は、個々の変数 YMDHMNS (年、月、日、時、分、秒) として日付ベクトルの成分を返します。datevec は、秒 (S) 出力の小数部分としてミリ秒を返します。

すべて展開する

日付値を日付ベクトルに変換する

format short g

n = 733779.651;
datevec(n)
ans =

         2009            1            6           15           37         26.4

日付文字列を日付ベクトルに変換する

DateString = '28.03.2005';
formatIn = 'dd.mm.yyyy';
datevec(DateString,formatIn)
ans =

        2005           3          28           0           0           0

datevec は、日付文字列に対する日付ベクトルを形式 'dd.mm.yyyy' で返します。

複数の日付文字列を日付ベクトルに変換する

複数の日付文字列は、セル配列で渡します。入力日付文字列には、すべて同じ形式を使用しなければなりません。

DateString = {'09/16/2007';'05/14/1996';'11/29/2010'};
formatIn = 'mm/dd/yyyy';
datevec(DateString,formatIn)
ans =

        2007           9          16           0           0           0
        1996           5          14           0           0           0
        2010          11          29           0           0           0

ミリ秒を含む日付を日付ベクトルに変換する

datevec('11:21:02.647','HH:MM:SS.FFF')
ans =

   1.0e+03 *

    2.0140    0.0010    0.0010    0.0110    0.0210    0.0026

出力日付ベクトルでは、ミリ秒は、秒フィールドの小数部分です。日付文字列 '11:21:02.647' は、完全な日付ベクトルに変換するのに十分な情報を含みません。既定の設定では、日付は 1、月は 1 月、年は現在の年です。

ピボット年を使用して、日付文字列を日付ベクトルに変換する

既定のピボット年を使用して、日付文字列を日付ベクトルに変換します。

DateString = '12-jun-17';
formatIn = 'dd-mmm-yy';
DateVector = datevec(DateString,formatIn)
DateVector =

        2017           6          12           0           0           0

ピボット年を 1800 年として、同じ日付文字列を日付ベクトルに変換します。

DateVector = datevec(DateString,formatIn,1800)
DateVector =

        1817           6          12           0           0           0

返される日付ベクトルの要素を割り当てる

日付文字列を日付ベクトルに変化して、日付ベクトルの成分を返します。

[y, m, d, h, mn, s] = datevec('01.02.12','dd.mm.yy')
y =

        2012


m =

     2


d =

     1


h =

     0


mn =

     0


s =

     0

入力引数

すべて展開する

DateNumber — シリアル日付値スカラー | ベクトル | 多次元配列

シリアル日付値を、スカラー、ベクトルまたは正の倍精度数値の多次元配列として指定します。

例: 731878

データ型: double

DateString — 日付文字列文字列 | 文字配列 | 文字列の 1 次元セル配列

日付文字列。各行が 1 つの日付文字列に対応する文字配列、あるいは文字列の 1 次元セル配列として指定します。日付文字列は、すべて同じ形式でなければなりません。

例: '24–Oct-2003 12:45:07'

例: ['19-Sep-2013';'20-Sep-2013';'21-Sep-2013']

例: {'15-Oct-2010' '20-Nov-2012'}

日付文字列形式がわかる場合、formatIn も指定してください。formatIn を指定しない場合、DateString は、次のいずれかの形式でなければなりません。

日付文字列形式

'dd-mmm-yyyy HH:MM:SS'

01-Mar-2000 15:45:17

'dd-mmm-yyyy'

01-Mar-2000

'mm/dd/yyyy'

03/01/2000

'mm/dd/yy'

03/01/00

'mm/dd'

03/01

'mmm.dd,yyyy HH:MM:SS'

Mar.01,2000 15:45:17

'mmm.dd,yyyy'

Mar.01,2000

'yyyy-mm-dd HH:MM:SS'

2000-03-01 15:45:17

'yyyy-mm-dd'

2000-03-01

'yyyy/mm/dd'

2000/03/01

'HH:MM:SS'

15:45:17

'HH:MM:SS PM'

3:45:17 PM

'HH:MM'

15:45

'HH:MM PM'

3:45 PM

いくつかの日付文字列形式では、日付文字列を変換するのに十分な情報を含まない場合があります。このような場合、既定で、時、分、秒は 0、日付は 1、月は 1 月、年は現在の年になります。MATLAB® は、2 文字の日付文字列の年 (たとえば、'79') を現在の年を中心に 100 年の範囲に入るものと考えます。

formatIn を指定しない場合、以下の点に注意してください。

  • 月を 2 桁 (mm) で指定する形式の場合、月の値が 12 を超えてはならない。

  • ただし、'mm/dd/yy' の形式では、日付文字列の 1 番目の項目が 12 を超え、2 番目のエントリが 12 以下の場合、MATLAB は、その日付文字列を 'yy/mm/dd' 形式であると考えます。

formatIn — 入力日付文字列の形式文字列

入力日付文字列の形式を、シンボル識別子の文字列として指定します。

次の表は、文字列 formatIn を構築するために使用できるシンボル識別子を示します。フィールドを区切るためのハイフン、スペース、コロンなどを含めることができます。

シンボル識別子

説明

yyyy

4 桁表記の年

1990, 2002

yy

2 桁表記の年

90, 02

QQ

文字 Q と 1 桁で表記する四半期

Q1

mmmm

フル ネームで表記する月

March, December

mmm

最初の 3 文字で表記する月

Mar, Dec

mm

2 桁表記の月

03, 12

m

大文字の頭文字で表記する月

M, D

dddd

フル ネームで表記する曜日

Monday, Tuesday

ddd

最初の 3 文字で表記する曜日

Mon, Tue

dd

2 桁表記の日

05, 20

d

大文字の頭文字で表記する曜日

M, T

HH

2 桁表記の時間
(シンボル識別子 AM または PM が使用される場合は先頭の 0 なし)

05, 5 AM

MM

2 桁表記の分

12, 02

SS

2 桁表記の秒

07, 59

FFF

3 桁表記のミリ秒

057

AM or PM

日付文字列に挿入される AM または PM

3:45:02 PM

文字列 formatIn は、以下のガイドラインに従わなければなりません。

  • どのフィールドも複数回指定することはできません。たとえば、'yy-mmm-dd-m' は、2 つの月識別子を含むので使用できません。ただし、例外として、dd の 1 つのインスタンスは、他の日識別子の 1 つのインスタンスと組み合わせることができます。たとえば、'dddd mmm dd yyyy' は有効な入力です。

  • AM または PM を使用する場合は、HH フィールドも必要です。

  • datevec は次を含む形式を受け入れません。 'QQ'

PivotYear — 100 年の日付範囲の開始年現在から 50 年を引いた年 (既定値) | 整数

2 文字表記の年を含む 100 年の日付範囲の開始年を整数で指定します。ピボット年は、年が 2 文字で指定されている日付文字列の解釈に使用されます。

formatIn に時刻が含まれる場合、現在の年月日の現在の時刻からピボット年が計算されます。それ以外の場合は、現在の年月日の午前 0 時から計算されます。

例: 2000

データ型: double

出力引数

すべて展開する

DateVector — 日付ベクトルベクトル | 行列

日付ベクトルは、m 行 x 6 列の行列として返されます。この行列の各行は 1 つの日付ベクトルに対応し、m は入力日付値または日付文字列の総数です。

[Y, M, D, H, MN, S] — 日付ベクトルの成分スカラー

個別のスカラー変数として返される、日付ベクトルの成分 (年、月、日、時、分、秒)。ミリ秒は、秒出力の小数部分です。

制限

  • 日付ベクトルを計算する場合、MATLAB は、1 より少ない月を表す値を 1 に設定します。1 より少ない日の値 D は、その前の月の最終日から |D| 差し引いた日の値に設定されます。ただし、0 ≤ DateNumber < 1 の場合、datevec(DateNumber) は、形式 [0 0 0 H MN S] の日付ベクトルを返します。ここで、HMNS は、それぞれ時、分、秒に対応します。

詳細

すべて展開する

ヒント

  • ベクトル化された呼び出し構文を使用すると、大きな配列でパフォーマンスを大幅に改善できます。

参考

|

この情報は役に立ちましたか?