重新定位表或时间表,使行成为变量
t2 = rows2vars(
的行重新定位T1.
)T1.
,使它们成为输出表中的变量T2.
,如图所示。如果Rows2vars.
可以串联行的内容T1.
,然后是相应的变量T2.
是阵列。否则,变量T2.
是细胞阵列。Rows2vars.
但是总是返回一个表T1.
可以是一张桌子,也可以是一张时间表。
这Rows2vars.
函数复制变量的名称T1.
到一个新的变量T2.
.如果T1.
行名或行时间,那么这些名称或时间成为变量名T2.
.除此以外,Rows2vars.
生成的名字Var1,…,VarN
作为变量名称T2.
.
创建表,然后重新定位其行以在新表中成为变量。
控件中加载数据数组患者
文件。控件创建包含姓
那性别
那年龄
那高度
, 和重量
变量。
加载病人t1 =表(姓氏,性别,年龄,高度,重量);头(T1,3)
ans =3×5表LastName性别年龄身高体重 ____________ __________ ___ ______ ______ {' 史密斯的}{‘男性’}38 71 176{“约翰逊”}{‘男性’}43 69 163{威廉姆斯的}{‘女性’}38 64 131
重新定位T1的行为输出表的变量。
t2 = Rows2Vars(T1);
显示前四个变量T2.
.第一变量T2.
的变量名T1.
.剩余的变量T2.
对应于T1.
.自从T1.
没有任何行标签,变量T2.
有默认名称,var1
来瓦伦
为了N
变量。
T2 (: 1:4)
ans =5×4表OriginalVariaBlenames var1 var2 var3 _____________________ _________ ________________________ {'史密斯'} {'JOHNSON'} {'JOHNSON'} {'MEALOMS'} {'MEAL'} {'MALE'} {'MEALO'} {'女性'} {'年龄'} {[38]} {[43]} {[38]} {'height'} {[71] {{[64] {'权重'} {'} {'权力'} {[163]} {[131]}
使用行名称创建一个表。如果表有行名称,那么Rows2vars.
将行名转换为变量名。
T3 =表(性别、年龄、身高、体重、“RowNames”、LastName);头(T3, 3)
ans =3×4表性别年龄身高体重__________ _________ ______史密斯{“男性”}38 71 176约翰逊{“男性”}43 69 163威廉姆斯{“女性”}38 64 131
的行重新定位T3.
.
T4 = Rows2Vars(T3);T4(:,1:4)
ans =4×4表TrounctionVariablenames史密斯johnson威廉姆斯_____________________________________________height'} {[71]} {[64]} {'权重'} {[176] {[163] {[131] {[
加载时间表并显示出来。
加载bostonTT波士顿
波士顿=6×3时间表时间临时风速雨______________________________________________ ____ 2016-03:00 59.5 0.1 0.05 2016-06-09 12:00:23 63 2.3 0.08 2016-06-09 18:02:57 61.7 3.1 0.13 2016-06-10 06:01:47 55.4 5.7 0.15 2016-06-10 12:06:00 62.3 2.6 0.87 2016-06-10 18:02:57 58.8 6.2 0.33
重新定位它,以使其行成为输出中的变量。这Rows2vars.
函数将行时间转换为名称,但是修改它们,以便它们是有效的变量名称。此外,返回的输出参数Rows2vars.
总是一个表,即使输入参数是一个时间表。
t = Rows2vars(波士顿)
警告:表变量名不是有效的MATLAB标识符已被修改。由于表变量名必须是唯一的,因此与新标识符匹配的任何表变量名也会被修改。要使用原始的行名作为新的变量名,请将'PreserveVariableNames'设置为true。
t =3×7表OriginalVariableNames x2016_06_0906_03_00 x2016_06_0912_00_23 x2016_06_0918_02_57 x2016_06_1006_01_47 x2016_06_1012_06_00 x2016_06_1018_02_57 _____________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ { '温度'} 59.5 63 61.7 55.4 62.3 58.8 { '风速'} 0.1 2.3 3.1 5.7 2.6 6.2 { '清除'} 0.05 0.08 0.13 0.15 0.87 0.33
从R2020a开始,您可以从输入表或时间表中获取名称,并将它们作为输出表中的变量名称使用,而无需修改。若要保存原始名称,请使用'variablenamingrule'
名称值对参数。
加载时间表并显示出来。
加载bostonTT波士顿
波士顿=6×3时间表时间临时风速雨______________________________________________ ____ 2016-03:00 59.5 0.1 0.05 2016-06-09 12:00:23 63 2.3 0.08 2016-06-09 18:02:57 61.7 3.1 0.13 2016-06-10 06:01:47 55.4 5.7 0.15 2016-06-10 12:06:00 62.3 2.6 0.87 2016-06-10 18:02:57 58.8 6.2 0.33
重新定向时间表,使其行时间成为输出表中的变量名称。转换约会时间
字符串的值并使用该值使用'variablenamingrule'
名称-值对。
t = Rows2vars(波士顿,'variablenamingrule'那“保存”)
t =3×7表notionvariablenames 2016-06-09 06:03:00 2016-06-09 2016-06-09 18:02:57 2016-06-10 06:01:47 2016-06-10 12:06:0.0.2016-06-10 18:02:57 _____________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________ {'Temp' } 59.5 63 61.7 55.4 62.3 58.8 {'WindSpeed'} 0.1 2.3 3.1 5.7 2.6 6.2 {'Rain' } 0.05 0.08 0.13 0.15 0.87 0.33
变量名称T.
没有有效的MATLAB标识符,因为日期以数字开头。但是,您可以使用点表示法来使用括号来引用此类变量。
T.('2016-06-09 06:03:00')
ans =.3×159.5000 0.1000 0.0500.
从电子表格读取数据到表中。显示前三行。
t1 =可读性('患者xls');头(T1,3)
ans =表3×10名字性别年龄所在地身高体重吸烟者心脏收缩舒张SelfAssessedHealthStatus ____________ __________ ___ _____________________________ ______ ______ ______ ________ _________ ________________________ { '史密斯'} { '男'} 38 { '县综合医院'} 71 176真正的124 93 { '优秀'} {”约翰逊'} {'male'} 43 {'va医院'} 69 163 false 109 77 {'fair'} {'williams'} {'女性'} 38 {'St.玛丽的医疗中心'} 64 131 false 125 83 {'好'}
的行重新定位T1.
是一个新表的变量,T2.
.指定姓
变量的T1.
变量名的来源是T2.
.
T2 = rows2vars (T1,'variablenamessource'那'姓');
显示前四个变量T2.
.第一变量T2.
的变量名T1.
.剩余的变量T2.
对应于T1.
.
T2 (: 1:4)
ans =9×4表TrounctionVariablenames史密斯约翰逊威廉姆斯___________________________________________________________________________________________'mal'} {'male'} {'女性'} {'女性'} {[38]} {[38]} {[38]} {[38]} {[位置'} {'县普通医院'} {'va医院'} {'St.玛丽的医疗中心'} {'height'} {[71]} {[69]} {'权力'} {'} {[176] {[131]}{[0]} {'systolic'} {[109]} {[09]} {{[83]} {'selfaseessedhealthstatus'} {'separt'} {'fair'} {'好'}
显示数据T2.Smith.
.在本例中,每个变量T2.
是一个9×1个单元格阵列,因为行中的值T1.
不能连接到数组中。
T2.Smith.
ans =9×1单元阵列{'male'} {[38]} {'entival hospital'} {[71]} {[171]} {[1]} {[94] {'septry'}
从电子表格读取数据到表中。使用电子表格的第一列作为表的行名称。显示前三行。
t1 =可读性('患者xls'那“ReadRowNames”,真的);头(T1,3)
ans =3×9表性别年龄所在地身高体重吸烟者心脏收缩舒张SelfAssessedHealthStatus __________ ___ _____________________________ ______ ______ ______ ________ _________ ________________________史密斯{ '男'} 38 { '县综合医院'} 71 176真正的124 93 { '优秀'}约翰逊{ '男'} 43 {'Va Hospital'} 69 163 False 109 77 {'Fair'}威廉姆斯{女性'} 38 {'St.玛丽的医疗中心'} 64 131 false 125 83 {'好'}
重新定位指定的变量T1.
并丢弃其余的。要按名称指定数据变量,请使用字符向量的单元格数组。
T2 = rows2vars (T1,'datavariables',{“性别”那'年龄'那“高度”那'重量'});T2 (: 1:4)
ans =4×4表TrounctionVariablenames史密斯johnson威廉姆斯_____________________________________________height'} {[71]} {[64]} {'权重'} {[176] {[163] {[131] {[
您还可以通过输入表中的位置指定数据变量。要指定变量的位置,请使用数字数组。
t3 = Rows2vars(T1,'datavariables',[1 2 6:9]);T3(:,1:4)
ans =6×4表TrounctionVariablenames史密斯johnson威廉姆斯__________________________________________________________________________________________________吸烟者'} {[1]} {[0]} {[0]} {'systolic'} {[124] {[109] {{'diaStolic'} {[93]} {[93]} {[{[83]} {'selfassessedhealthstatus'} {'separessedhealthstatus'} {'fair'} {'fair'} {'好'}
T1.
-输入表输入表,指定为表或时间表。
指定可选的逗号分离对名称,价值
参数。的名字
是参数名称和价值
是相应的价值。的名字
必须出现在引号内。您可以以任何顺序指定多个名称和值对参数Name1, Value1,…,的家
.
“VariableNamingRule”,“保存”
留下原始名称T1.
,不修改它们有效的matlab®身份标识。
'variablenamessource'
-可变的T1.
包含变量名称可变的T1.
包含变量名称,指定为逗号分隔的对组成'variablenamessource'
和字符矢量,字符串标量,正整数或逻辑向量。这Rows2vars.
功能解释值'variablenamessource'
如表所示。
的价值 |
意义 |
---|---|
字符矢量或字符串标量 |
输入表中的变量的名称 |
整数 |
这N 变量in.T1. . |
逻辑向量,其长度等于变量的数量 |
这 |
虽然价值'variablenamessource'
必须是指定表变量的名称,编号或逻辑数组,变量本身可以具有任何数据类型,其中包含这些限制。
指定表变量中包含的值必须具有数据类型,允许将值转换为字符串。例如,值'variablenamessource'
可以是包含a的表变量的名称约会时间
阵列,因为约会时间
值可以转换为字符串。
从指定的表变量拍摄的名称数必须与输入表的行数匹配。
'datavariables'
-选择变量T1.
选择变量T1.
,指定为逗号分隔的配对组成'datavariables'
字符向量,字符向量的单元数组,字符串数组,正整数,正整数的向量,逻辑向量,或下标对象。这Rows2vars.
功能选择由值指定的变量'datavariables'
并且重新定位只有那些变量成为行的行T2.
.剩余的变量T1.
被丢弃。
'variablenamingrule'
-命名变量的规则T2.
'调整'
(默认)|“保存”
命名变量的规则T2.
,指定为逗号分隔的配对组成'variablenamingrule'
并且是价值'调整'
或者“保存”
.
价值'variablenamingrule'
在输出表或时间表中指定以下命名规则。
的价值 |
规则 |
---|---|
|
修改从输入表或时间表中提取的名称,以便输出中相应的变量名称也是有效的MATLAB标识符。 |
|
保留从输入表或时间表中提取的原始名称。输出中相应的变量名可以使用任何Unicode®字符,包括空格和非ascii字符。 笔记:在某些情况下,
|
用法说明和限制:
不支持时间表。金宝app
输入表不能是可变的大小。
这'variablenamessource'
不支持名称值参数。金宝app
价值'datavariables'
名称-值参数必须是常量。
价值'variablenamingrule'
名称-值参数必须是常量。
如果将行名分配给输入表,那么行名向量必须是常量。
您单击了与此MATLAB命令对应的链接:
通过在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您还可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。