datetime 配列の日付と時刻の成分の抽出または割り当て
次の例では、既存の datetime 配列から日付と時刻の成分を抽出する方法として、配列のプロパティへのアクセスと関数呼び出しの 2 つの方法を示します。次に、配列のプロパティを変更して、日付と時刻の成分を変更する方法を示します。
プロパティにアクセスして日付と時刻の成分を取得する
datetime
配列を作成します。
t = datetime('now') + calyears(0:2) + calmonths(0:2) + hours(20:20:60)
t = 1x3 datetime
21-Jul-2024 11:18:58 22-Aug-2025 07:18:58 23-Sep-2026 03:18:58
配列内の各 datetime の年の値を取得します。ドット表記を使用して t
の Year
プロパティにアクセスします。
t_years = t.Year
t_years = 1×3
2024 2025 2026
出力の t_years
は数値配列です。
Month
プロパティにアクセスして、t
の各 datetime の月の値を取得します。
t_months = t.Month
t_months = 1×3
7 8 9
t
の Hour
、Minute
および Second
プロパティにアクセスすることで、各 datetime の日付、時、分、秒のコンポーネントをそれぞれ取得できます。
関数を使用して日付と時刻の成分を取得する
関数 month
を使用して、t
内の各 datetime の月番号を取得します。関数の使用は、t
の特定の日付や時刻のコンポーネントを取得するための代替方法です。
m = month(t)
m = 1×3
7 8 9
Month
プロパティではなく、関数 month
を使用して t
の各 datetime の完全な月名を取得します。
m = month(t,'name')
m = 1x3 cell
{'July'} {'August'} {'September'}
t
の各 datetime の年、四半期、週、日、時、分および秒の各コンポーネントは、それぞれ関数 year
、quarter
、week
、hour
、minute
および second
を使用して取得できます。
t
の各 datetime について、通年の週番号を取得します。
w = week(t)
w = 1×3
30 34 39
複数の日付と時刻の成分の取得
関数 ymd
を使用して、t
の年、月および日の値を 3 つの独立した数値配列として取得します。
[y,m,d] = ymd(t)
y = 1×3
2024 2025 2026
m = 1×3
7 8 9
d = 1×3
21 22 23
関数 hms
を使用して、t
の時、分および秒の値を 3 つの独立した数値配列として取得します。
[h,m,s] = hms(t)
h = 1×3
11 7 3
m = 1×3
18 18 18
s = 1×3
58.5974 58.5974 58.5974
日付と時刻の成分の変更
配列のプロパティを変更して、既存の datetime
配列のコンポーネントに新しい値を割り当てます。ドット表記を使用して特定のプロパティにアクセスします。
t
のすべての datetime 値の年番号を 2014 に変更します。ドット表記を使用して Year
プロパティを変更します。
t.Year = 2014
t = 1x3 datetime
21-Jul-2014 11:18:58 22-Aug-2014 07:18:58 23-Sep-2014 03:18:58
t
の 3 つの datetime 値の月を、それぞれ 1 月、2 月および 3 月に変更します。新しい値は数値配列として指定しなければなりません。
t.Month = [1,2,3]
t = 1x3 datetime
21-Jan-2014 11:18:58 22-Feb-2014 07:18:58 23-Mar-2014 03:18:58
TimeZone
プロパティに値を代入して、t
のタイム ゾーンを設定します。
t.TimeZone = 'Europe/Berlin';
t
の表示形式を変更して、日付のみを表示し時間情報を表示しないようにします。
t.Format = 'dd-MMM-yyyy'
t = 1x3 datetime
21-Jan-2014 22-Feb-2014 23-Mar-2014
通常の範囲外の値を datetime 成分に割り当てると、MATLAB® はコンポーネントを正規化します。月間通算日番号の通常の範囲は 1 から 31 です。この範囲を超える日の値を割り当てます。
t.Day = [-1 1 32]
t = 1x3 datetime
30-Dec-2013 01-Feb-2014 01-Apr-2014
月番号と年番号は、各 date コンポーネントが通常の範囲内にあるように調整されます。この場合、2014 年 1 月 ‐1 日は 2013 年 12 月 30 日に変換されます。