ドキュメンテーション

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

datetime 配列の日付と時刻の成分の抽出または割り当て

次の例では、既存の datetime 配列から日付と時刻の成分を抽出する方法として、配列のプロパティへのアクセスと関数呼び出しの 2 つの方法を示します。次に、配列のプロパティを変更して、日付と時刻の成分を変更する方法を示します。

プロパティにアクセスして日付と時刻の成分を取得する

datetime 配列を作成します。

t = datetime('now') + calyears(0:2) + calmonths(0:2) + hours(20:20:60)
t = 1x3 datetime array
   04-Feb-2019 06:12:08   05-Mar-2020 02:12:08   05-Apr-2021 22:12:08

配列内の各 datetime の年の値を取得します。ドット表記を使用して tYear プロパティにアクセスします。

t_years = t.Year
t_years = 1×3

        2019        2020        2021

出力の t_years は数値配列です。

Month プロパティにアクセスして、t の各 datetime の月の値を取得します。

t_months = t.Month
t_months = 1×3

     2     3     4

tHourMinute および Second プロパティにアクセスすることで、各 datetime の日付、時、分、秒のコンポーネントをそれぞれ取得できます。

関数を使用して日付と時刻の成分を取得する

関数 month を使用して、t 内の各 datetime の月番号を取得します。関数の使用は、t の特定の日付や時刻のコンポーネントを取得するための代替方法です。

m = month(t)
m = 1×3

     2     3     4

Month プロパティではなく、関数 month を使用して t の各 datetime の完全な月名を取得します。

m = month(t,'name')
m = 1x3 cell array
    {'February'}    {'March'}    {'April'}

t の各 datetime の年、四半期、週、日、時、分および秒の各コンポーネントは、それぞれ関数 yearquarterweekhourminute および second を使用して取得できます。

t の各 datetime について、通年の週番号を取得します。

w = week(t)
w = 1×3

     6    10    15

複数の日付と時刻の成分の取得

関数 ymd を使用して、t の年、月および日の値を 3 つの独立した数値配列として取得します。

[y,m,d] = ymd(t)
y = 1×3

        2019        2020        2021

m = 1×3

     2     3     4

d = 1×3

     4     5     5

関数 hms を使用して、t の時、分および秒の値を 3 つの独立した数値配列として取得します。

[h,m,s] = hms(t)
h = 1×3

     6     2    22

m = 1×3

    12    12    12

s = 1×3

    8.6322    8.6322    8.6322

日付と時刻の成分の変更

配列のプロパティを変更して、既存の datetime 配列のコンポーネントに新しい値を割り当てます。ドット表記を使用して特定のプロパティにアクセスします。

t のすべての datetime 値の年番号を 2014 に変更します。ドット表記を使用して Year プロパティを変更します。

t.Year = 2014
t = 1x3 datetime array
   04-Feb-2014 06:12:08   05-Mar-2014 02:12:08   05-Apr-2014 22:12:08

t の 3 つの datetime 値の月を、それぞれ 1 月、2 月および 3 月に変更します。新しい値は数値配列として指定しなければなりません。

t.Month = [1,2,3]
t = 1x3 datetime array
   04-Jan-2014 06:12:08   05-Feb-2014 02:12:08   05-Mar-2014 22:12:08

TimeZone プロパティに値を代入して、t のタイム ゾーンを設定します。

t.TimeZone = 'Europe/Berlin';

t の表示形式を変更して、日付のみを表示し時間情報を表示しないようにします。

t.Format = 'dd-MMM-yyyy'
t = 1x3 datetime array
   04-Jan-2014   05-Feb-2014   05-Mar-2014

通常の範囲外の値を datetime 成分に割り当てると、MATLAB® はコンポーネントを正規化します。月間通算日番号の通常の範囲は 1 から 31 です。この範囲を超える日の値を割り当てます。

t.Day = [-1 1 32]
t = 1x3 datetime array
   30-Dec-2013   01-Feb-2014   01-Apr-2014

月番号と年番号は、各 date コンポーネントが通常の範囲内にあるように調整されます。この場合、2014 年 1 月 ‐1 日は 2013 年 12 月 30 日に変換されます。

参考

| | |