movevars
在表或时间表中移动变量
说明
将指定的表变量移动到由 T2 = movevars(T1,vars,After=location)location 指示的表变量的右侧。您可以通过名称、位置或逻辑索引数组来指定变量和 location。location 指定的变量可以是输入表中的任何变量。
例如,要将名为 var3 的表变量移至表变量 var5 后,请使用 T2 = movevars(T1,"var3",After="var5")。
在 R2023a 之前的版本中: 如果不知道最后一个变量的名称或位置,可以使用语法
vars将T2 = movevars(T1,vars,After=width(T1))移到表的末尾。width函数返回表中变量的数目。
示例
创建一个表并逐个移动变量。您可以通过名称或表中的位置指定变量。
将数据从电子表格读取到表中。
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"
⋮
移动第四个变量,使其位于第一个变量之后。
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 函数移动多个表变量。您可以通过名称或位置指定变量。
将数据从电子表格读取到表中。
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 的前四个变量,使它们位于 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"
⋮
输入参数
输出参量
具有移动变量的输出表,以表或时间表形式返回。
扩展功能
movevars 函数完全支持 tall 数组。有关详细信息,请参阅 tall 数组。
请参阅“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.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 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)
