movevars
table または timetable の変数を移動
説明
は、指定した table 変数を T2 = movevars(T1,vars,After=location)location で示された table 変数の右側に移動します。変数と location は名前または位置で指定するか、logical インデックスの配列を使用して指定できます。location で指定する変数は、入力 table の任意の変数にすることができます。
たとえば、var3 という名前の table 変数を table 変数 var5 の後に移動するには、T2 = movevars(T1,"var3",After="var5") を使用します。
R2023a より前: 最後の変数の名前も位置もわからない場合は、構文
T2 = movevars(T1,vars,After=width(T1))を使用することで、varsを table の末尾に移動できます。width関数は、table 内の変数の数を返します。
例
table を作成し、変数を一度に 1 つずつ移動します。変数は名前または table 内の位置によって指定できます。
データをスプレッドシートから table に読み取ります。
T1 = readtable("outages.csv",TextType="string")
T1=1468×6 table
Region OutageTime Loss Customers RestorationTime Cause
___________ ________________ ______ __________ ________________ _________________
"SouthWest" 2002-02-01 12:18 458.98 1.8202e+06 2002-02-07 16:50 "winter storm"
"SouthEast" 2003-01-23 00:49 530.14 2.1204e+05 NaT "winter storm"
"SouthEast" 2003-02-07 21:15 289.4 1.4294e+05 2003-02-17 08:14 "winter storm"
"West" 2004-04-06 05:44 434.81 3.4037e+05 2004-04-06 06:10 "equipment fault"
"MidWest" 2002-03-16 06:18 186.44 2.1275e+05 2002-03-18 23:23 "severe storm"
"West" 2003-06-18 02:49 0 0 2003-06-18 10:54 "attack"
"West" 2004-06-20 14:39 231.29 NaN 2004-06-20 19:16 "equipment fault"
"West" 2002-06-06 19:28 311.86 NaN 2002-06-07 00:51 "equipment fault"
"NorthEast" 2003-07-16 16:23 239.93 49434 2003-07-17 01:12 "fire"
"MidWest" 2004-09-27 11:09 286.72 66104 2004-09-27 16:37 "equipment fault"
"SouthEast" 2004-09-05 17:48 73.387 36073 2004-09-05 20:46 "equipment fault"
"West" 2004-05-21 21:45 159.99 NaN 2004-05-22 04:23 "equipment fault"
"SouthEast" 2002-09-01 18:22 95.917 36759 2002-09-01 19:12 "severe storm"
"SouthEast" 2003-09-27 07:32 NaN 3.5517e+05 2003-10-04 07:02 "severe storm"
"West" 2003-11-12 06:12 254.09 9.2429e+05 2003-11-17 02:04 "winter storm"
"NorthEast" 2004-09-18 05:54 0 0 NaT "equipment fault"
⋮
Region という名前の変数を移動して、Cause という名前の変数の前に配置します。
T2 = movevars(T1,"Region",Before="Cause")
T2=1468×6 table
OutageTime Loss Customers RestorationTime Region Cause
________________ ______ __________ ________________ ___________ _________________
2002-02-01 12:18 458.98 1.8202e+06 2002-02-07 16:50 "SouthWest" "winter storm"
2003-01-23 00:49 530.14 2.1204e+05 NaT "SouthEast" "winter storm"
2003-02-07 21:15 289.4 1.4294e+05 2003-02-17 08:14 "SouthEast" "winter storm"
2004-04-06 05:44 434.81 3.4037e+05 2004-04-06 06:10 "West" "equipment fault"
2002-03-16 06:18 186.44 2.1275e+05 2002-03-18 23:23 "MidWest" "severe storm"
2003-06-18 02:49 0 0 2003-06-18 10:54 "West" "attack"
2004-06-20 14:39 231.29 NaN 2004-06-20 19:16 "West" "equipment fault"
2002-06-06 19:28 311.86 NaN 2002-06-07 00:51 "West" "equipment fault"
2003-07-16 16:23 239.93 49434 2003-07-17 01:12 "NorthEast" "fire"
2004-09-27 11:09 286.72 66104 2004-09-27 16:37 "MidWest" "equipment fault"
2004-09-05 17:48 73.387 36073 2004-09-05 20:46 "SouthEast" "equipment fault"
2004-05-21 21:45 159.99 NaN 2004-05-22 04:23 "West" "equipment fault"
2002-09-01 18:22 95.917 36759 2002-09-01 19:12 "SouthEast" "severe storm"
2003-09-27 07:32 NaN 3.5517e+05 2003-10-04 07:02 "SouthEast" "severe storm"
2003-11-12 06:12 254.09 9.2429e+05 2003-11-17 02:04 "West" "winter storm"
2004-09-18 05:54 0 0 NaT "NorthEast" "equipment fault"
⋮
4 番目の変数を移動して、最初の変数の後に配置します。
T3 = movevars(T2,4,After=1)
T3=1468×6 table
OutageTime RestorationTime Loss Customers Region Cause
________________ ________________ ______ __________ ___________ _________________
2002-02-01 12:18 2002-02-07 16:50 458.98 1.8202e+06 "SouthWest" "winter storm"
2003-01-23 00:49 NaT 530.14 2.1204e+05 "SouthEast" "winter storm"
2003-02-07 21:15 2003-02-17 08:14 289.4 1.4294e+05 "SouthEast" "winter storm"
2004-04-06 05:44 2004-04-06 06:10 434.81 3.4037e+05 "West" "equipment fault"
2002-03-16 06:18 2002-03-18 23:23 186.44 2.1275e+05 "MidWest" "severe storm"
2003-06-18 02:49 2003-06-18 10:54 0 0 "West" "attack"
2004-06-20 14:39 2004-06-20 19:16 231.29 NaN "West" "equipment fault"
2002-06-06 19:28 2002-06-07 00:51 311.86 NaN "West" "equipment fault"
2003-07-16 16:23 2003-07-17 01:12 239.93 49434 "NorthEast" "fire"
2004-09-27 11:09 2004-09-27 16:37 286.72 66104 "MidWest" "equipment fault"
2004-09-05 17:48 2004-09-05 20:46 73.387 36073 "SouthEast" "equipment fault"
2004-05-21 21:45 2004-05-22 04:23 159.99 NaN "West" "equipment fault"
2002-09-01 18:22 2002-09-01 19:12 95.917 36759 "SouthEast" "severe storm"
2003-09-27 07:32 2003-10-04 07:02 NaN 3.5517e+05 "SouthEast" "severe storm"
2003-11-12 06:12 2003-11-17 02:04 254.09 9.2429e+05 "West" "winter storm"
2004-09-18 05:54 NaT 0 0 "NorthEast" "equipment fault"
⋮
関数 movevars を使用して、複数の table 変数を移動します。変数は名前または位置によって指定できます。
データをスプレッドシートから table に読み取ります。
T1 = readtable("outages.csv",TextType="string")
T1=1468×6 table
Region OutageTime Loss Customers RestorationTime Cause
___________ ________________ ______ __________ ________________ _________________
"SouthWest" 2002-02-01 12:18 458.98 1.8202e+06 2002-02-07 16:50 "winter storm"
"SouthEast" 2003-01-23 00:49 530.14 2.1204e+05 NaT "winter storm"
"SouthEast" 2003-02-07 21:15 289.4 1.4294e+05 2003-02-17 08:14 "winter storm"
"West" 2004-04-06 05:44 434.81 3.4037e+05 2004-04-06 06:10 "equipment fault"
"MidWest" 2002-03-16 06:18 186.44 2.1275e+05 2002-03-18 23:23 "severe storm"
"West" 2003-06-18 02:49 0 0 2003-06-18 10:54 "attack"
"West" 2004-06-20 14:39 231.29 NaN 2004-06-20 19:16 "equipment fault"
"West" 2002-06-06 19:28 311.86 NaN 2002-06-07 00:51 "equipment fault"
"NorthEast" 2003-07-16 16:23 239.93 49434 2003-07-17 01:12 "fire"
"MidWest" 2004-09-27 11:09 286.72 66104 2004-09-27 16:37 "equipment fault"
"SouthEast" 2004-09-05 17:48 73.387 36073 2004-09-05 20:46 "equipment fault"
"West" 2004-05-21 21:45 159.99 NaN 2004-05-22 04:23 "equipment fault"
"SouthEast" 2002-09-01 18:22 95.917 36759 2002-09-01 19:12 "severe storm"
"SouthEast" 2003-09-27 07:32 NaN 3.5517e+05 2003-10-04 07:02 "severe storm"
"West" 2003-11-12 06:12 254.09 9.2429e+05 2003-11-17 02:04 "winter storm"
"NorthEast" 2004-09-18 05:54 0 0 NaT "equipment fault"
⋮
Loss、Customer、Cause という名前の変数を移動して、最初の変数の前に配置します。
T2 = movevars(T1,["Loss" "Customers" "Cause"],Before=1)
T2=1468×6 table
Loss Customers Cause Region OutageTime RestorationTime
______ __________ _________________ ___________ ________________ ________________
458.98 1.8202e+06 "winter storm" "SouthWest" 2002-02-01 12:18 2002-02-07 16:50
530.14 2.1204e+05 "winter storm" "SouthEast" 2003-01-23 00:49 NaT
289.4 1.4294e+05 "winter storm" "SouthEast" 2003-02-07 21:15 2003-02-17 08:14
434.81 3.4037e+05 "equipment fault" "West" 2004-04-06 05:44 2004-04-06 06:10
186.44 2.1275e+05 "severe storm" "MidWest" 2002-03-16 06:18 2002-03-18 23:23
0 0 "attack" "West" 2003-06-18 02:49 2003-06-18 10:54
231.29 NaN "equipment fault" "West" 2004-06-20 14:39 2004-06-20 19:16
311.86 NaN "equipment fault" "West" 2002-06-06 19:28 2002-06-07 00:51
239.93 49434 "fire" "NorthEast" 2003-07-16 16:23 2003-07-17 01:12
286.72 66104 "equipment fault" "MidWest" 2004-09-27 11:09 2004-09-27 16:37
73.387 36073 "equipment fault" "SouthEast" 2004-09-05 17:48 2004-09-05 20:46
159.99 NaN "equipment fault" "West" 2004-05-21 21:45 2004-05-22 04:23
95.917 36759 "severe storm" "SouthEast" 2002-09-01 18:22 2002-09-01 19:12
NaN 3.5517e+05 "severe storm" "SouthEast" 2003-09-27 07:32 2003-10-04 07:02
254.09 9.2429e+05 "winter storm" "West" 2003-11-12 06:12 2003-11-17 02:04
0 0 "equipment fault" "NorthEast" 2004-09-18 05:54 NaT
⋮
T2 の最初の 4 つの変数を移動して、RestorationTime の後に配置します。
T3 = movevars(T2,[1:4],After="RestorationTime")T3=1468×6 table
OutageTime RestorationTime Loss Customers Cause Region
________________ ________________ ______ __________ _________________ ___________
2002-02-01 12:18 2002-02-07 16:50 458.98 1.8202e+06 "winter storm" "SouthWest"
2003-01-23 00:49 NaT 530.14 2.1204e+05 "winter storm" "SouthEast"
2003-02-07 21:15 2003-02-17 08:14 289.4 1.4294e+05 "winter storm" "SouthEast"
2004-04-06 05:44 2004-04-06 06:10 434.81 3.4037e+05 "equipment fault" "West"
2002-03-16 06:18 2002-03-18 23:23 186.44 2.1275e+05 "severe storm" "MidWest"
2003-06-18 02:49 2003-06-18 10:54 0 0 "attack" "West"
2004-06-20 14:39 2004-06-20 19:16 231.29 NaN "equipment fault" "West"
2002-06-06 19:28 2002-06-07 00:51 311.86 NaN "equipment fault" "West"
2003-07-16 16:23 2003-07-17 01:12 239.93 49434 "fire" "NorthEast"
2004-09-27 11:09 2004-09-27 16:37 286.72 66104 "equipment fault" "MidWest"
2004-09-05 17:48 2004-09-05 20:46 73.387 36073 "equipment fault" "SouthEast"
2004-05-21 21:45 2004-05-22 04:23 159.99 NaN "equipment fault" "West"
2002-09-01 18:22 2002-09-01 19:12 95.917 36759 "severe storm" "SouthEast"
2003-09-27 07:32 2003-10-04 07:02 NaN 3.5517e+05 "severe storm" "SouthEast"
2003-11-12 06:12 2003-11-17 02:04 254.09 9.2429e+05 "winter storm" "West"
2004-09-18 05:54 NaT 0 0 "equipment fault" "NorthEast"
⋮
入力引数
入力 table。table または timetable として指定します。
入力 table の変数。string 配列、文字ベクトル、文字ベクトルの cell 配列、pattern スカラー、数値配列、または logical 配列として指定します。
移動した変数の挿入位置。string スカラー、文字ベクトル、整数または logical 配列として指定します。
locationが string スカラーまたは文字ベクトルである場合、これは入力 tableT1内の変数名です。locationが整数nの場合、これはT1内のn番目の変数を指定します。locationが logical 配列で、そのn番目の要素が1(true) である場合、これはT1内のn番目の変数を指定します。locationのその他の要素はすべて0(false) でなければなりません。
出力引数
移動した変数を含む出力 table。table または timetable として返されます。
拡張機能
movevars 関数は tall 配列を完全にサポートしています。詳細については、tall 配列を参照してください。
使用上の注意および制限:
入力引数
varsには、重複した変数名を含めることができません。入力引数
varsはパターン式をサポートしません。
詳細については、table のコード生成 (MATLAB Coder)およびコード生成における table の制限事項 (MATLAB Coder)を参照してください。
使用上の注意および制限については、「C/C++ コード生成」セクションを参照してください。GPU コード生成にも同様の、使用上の注意および制限が適用されます。
movevars 関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
movevars 関数は分散配列を完全にサポートしています。詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2018a で導入名前と値の引数 After を指定せずに最後の変数の後に変数を移動できるようになりました。以前のリリースでは、名前と値の引数 After または Before を指定せずに movevars を呼び出すと、エラーになっていました。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
