テーブル内にある日時​データから特定した曜​日情報を、元のテーブ​ルに追加したい

2 views (last 30 days)
DAIKI
DAIKI on 25 Mar 2023
Moved: Atsushi Ueno on 26 Mar 2023
テーブル内にある各行にある日時データから曜日を特定したのですが、その曜日の情報を元のテーブルに列を追加する形で加えたいです。
どのようにしたら出来ますでしょうか?
※weekday関数で各行の特定までは出来たのですが、出てきたchar型の曜日データを元のテーブルに追加するところで詰まっています。
 テーブル内の一つのセルに曜日データを格納したいです。

Accepted Answer

Kohei Ikeda
Kohei Ikeda on 26 Mar 2023
Edited: Kohei Ikeda on 26 Mar 2023
addvars関数 を使うことで、テーブルの列を追加できます。
追加位置も指定できます。(以下はざっくりとしたサンプルコードです)
% 日時データ入りのテーブルを作成
t = array2table(randi([-10,10],10,5));
date_list = datetime()+days(-5:4);
t = addvars(t,date_list', 'Before', 'Var1','NewVariableNames','Date');
head(t,5)
Date Var1 Var2 Var3 Var4 Var5 ____________________ ____ ____ ____ ____ ____ 21-Mar-2023 03:02:37 3 0 -9 8 6 22-Mar-2023 03:02:37 5 -3 -7 6 -1 23-Mar-2023 03:02:37 9 4 -9 1 -5 24-Mar-2023 03:02:37 6 -1 6 5 9 25-Mar-2023 03:02:37 10 -10 -6 1 -1
% 曜日データを抽出
[~,weekdays] = weekday(t.Date,"short");
head(weekdays,5)
Tue Wed Thu Fri Sat
% Date列の後ろに曜日データの列を追加
new_t = addvars(t,weekdays, 'After', 'Date','NewVariableNames','Weekday');
head(new_t, 5)
Date Weekday Var1 Var2 Var3 Var4 Var5 ____________________ _______ ____ ____ ____ ____ ____ 21-Mar-2023 03:02:37 Tue 3 0 -9 8 6 22-Mar-2023 03:02:37 Wed 5 -3 -7 6 -1 23-Mar-2023 03:02:37 Thu 9 4 -9 1 -5 24-Mar-2023 03:02:37 Fri 6 -1 6 5 9 25-Mar-2023 03:02:37 Sat 10 -10 -6 1 -1
  1 Comment
DAIKI
DAIKI on 26 Mar 2023
Moved: Atsushi Ueno on 26 Mar 2023
意図したことができました!addvars関数ありがとうございました!

Sign in to comment.

More Answers (0)

Categories

Find more on table in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!