rows2vars
重新定位表或时间表,以便行成为变量
描述
T2 = rows2vars (
调整的行T1
)T1
,使他们成为变量输出表中T2
。如果rows2vars
可以连接的内容行吗T1
的,那么相应的变量T2
是数组。否则,的变量T2
是细胞阵列。的rows2vars
函数副本的变量的名称T1
一个新的变量T2
。然而,输出始终是一个表T1
可以是一个表或一个时间表。
例如,如果T1
有两排和五个变量呢T2
有五行,两个变量包含原始数据来自哪里T1
和一个新变量命名OriginalVariableNames
。在T2
,变量OriginalVariableNames
包含表变量的名称T1
。
如果T1
行名称或行次,那么这些名称的变量名或次T2
。否则,rows2vars
生成的名字Var1…, VarN
的变量名T2
。
从概念上讲,你能想到的T2
是像一个置T1
。从技术上讲,T2
不是一个真正的转置输入表的吗rows2vars
添加一个新的变量T2
。同时,的变量T1
可能会不兼容的数据类型,在这种情况下,“转置”行T1
成为细胞数组T2
。
例子
调整行作为变量
创建表,然后重新定位他们在新表行变量。
加载数据的数组patients.mat
文件。创建一个表,其中包含的姓
,性别
,年龄
,高度
,重量
变量。
负载病人T1 =表(LastName、性别、年龄、身高、体重);头(T1, 3)
LastName性别年龄身高体重_______ __________ ___交{“史密斯”}{‘男性’}38 71 176{“约翰逊”}{‘男性’}43 69 163{威廉姆斯的}{‘女性’}38 64 131
调整的行输出表T1的变量。
T2 = rows2vars (T1);
显示的第一个四个变量T2
。的第一个变量T2
包含的变量的名称T1
。其余的变量T2
对应于行T1
。自T1
没有任何行标签,变量的T2
有默认的名字,Var1
来VarN
为N
变量。
T2 (: 1:4)
ans =5×4表OriginalVariableNames Var1 Var2 Var3 _____________________ _____ ___________ _______{的LastName}{“史密斯”}{“约翰逊”}{威廉姆斯的}{‘性别’}{‘男性’}{‘男性’}{‘女性’}{‘年龄’}{[38]}{[43]}{[38]}{“高度”}{[71]}{[69]}{[64]}{“重量”}{[176]}{[163]}{[131]}
创建一个表行名称。如果一个表行名称rows2vars
行名称转化为变量的名字。
T3 =表(性别、年龄、身高、体重、“RowNames”、LastName);头(T3, 3)
性别年龄身高体重__________ ___交史密斯{‘男性’}38 71 176约翰逊{‘男性’}43 69 163威廉姆斯{‘女性’}38 64 131
调整的行T3
。
T4 = rows2vars (T3);T4 (: 1:4)
ans =4×4表史密斯OriginalVariableNames约翰逊威廉姆斯_____________________说__________{‘性别’}{‘男性’}{‘男性’}{‘女性’}{‘年龄’}{[38]}{[43]}{[38]}{“高度”}{[71]}{[69]}{[64]}{“重量”}{[176]}{[163]}{[131]}
行调整时间表
加载一个时间表并显示它。
负载bostonTT波士顿
波士顿=6×3的时间表时间临时雨风速___________________ _____上2016-06-09 06: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 18:02:57 58.8 6.2 0.33 62.3 2.6 0.87 2016-06-10
重新定位它这行成为输出变量。的rows2vars
函数将行乘以变成的名字,但修改他们,使他们是有效的变量名。另外,返回的输出参数rows2vars
总是一个表,即使输入参数是一个时间表。
T = rows2vars(波士顿)
警告:表变量名称是无效的MATLAB标识符已被修改。自表变量名称必须是唯一的,发生的任何表变量名称匹配新的标识符也被修改。使用原始行名称作为新变量名称,设置“PreserveVariableNames”为true。
T =表3×7OriginalVariableNames 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{“风速”}{‘雨’}0.05 0.08 0.13 6.2 0.15 0.87 0.33
保留原来的名称
从R2020a开始,你可以把名字从输入表或时间表,并使用它们作为变量名输出表中没有修改。保留原来的名称,使用“VariableNamingRule”
名称-值对的论点。
加载一个时间表并显示它。
负载bostonTT波士顿
波士顿=6×3的时间表时间临时雨风速___________________ _____上2016-06-09 06: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 18:02:57 58.8 6.2 0.33 62.3 2.6 0.87 2016-06-10
调整时间表,以便其行乘以成为输出表中变量名。转换datetime
值字符串和保存生成的名称使用“VariableNamingRule”
名称-值对。
T = rows2vars(波士顿,“VariableNamingRule”,“保存”)
T =表3×7OriginalVariableNames 2016-06-09 06:03:00 2016-06-09 12:00:23 2016-06-09 18:02:57 2016-06-10 06:01:47 2016-06-10 12:06:00 2016-06-10 18:02:57 _____________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________{‘临时’}59.5 63 61.7 55.4 62.3 58.8 0.1 2.3 3.1 5.7 2.6{“风速”}{‘雨’}0.05 0.08 0.13 6.2 0.15 0.87 0.33
的变量名T
不是有效的MATLAB®标识符,因为日期开始一个数字。不过,您可以使用点符号来引用这些变量,使用括号。
t (“2016-06-09 06:03:00”)
ans =3×159.5000 0.1000 0.0500
输出表变量的名字
从电子表格到表中读取数据。显示前三行。
T1 = readtable (“patients.xls”);头(T1, 3)
LastName性别年龄位置身高体重吸烟者收缩压舒张压SelfAssessedHealthStatus _______ __________ ___看上去_____________________________长得一样________ _____ ________________________{“史密斯”}{‘男性’}38{县综合医院的}71 176真正的124 93{‘优秀’}{“约翰逊”}{‘男性’}43 {VA医院的}69 163错误109 77{‘公平’}{威廉姆斯的}{‘女性’}38{圣。玛丽的医学中心}64 131错误125 83{‘好’}
调整的行T1
变量的一个新表,T2
。指定该姓
变量的T1
是变量的名字的来源T2
。
T2 = rows2vars (T1,“VariableNamesSource”,“姓”);
显示的第一个四个变量T2
。的第一个变量T2
包含的变量的名称T1
。其余的变量T2
对应于行T1
。
T2 (: 1:4)
ans =9×4表史密斯OriginalVariableNames约翰逊威廉姆斯____________________________ ___________________________售予_____________________________{‘性别’}{‘男性’}{‘男性’}{‘女性’}{‘年龄’}{[38]}{[43]}{[38]}{“位置”}{县综合医院的}{VA医院的}{圣。玛丽的医学中心}{“高度”}{[71]}{[69]}{[64]}{“重量”}{[176]}{[163]}{[131]}{“烟民”}{[1]}{[0]}{[0]}{“收缩”}{[124]}{[109]}{[125]}{舒张的}{[93]}{[77]}{[83]}{‘SelfAssessedHealthStatus}{‘优秀’}{‘公平’}{‘好’}
显示的数据T2.Smith
。在这个例子中,每个变量的T2
是9-by-1细胞数组,因为行中的值T1
不能连接到阵列。
T2.Smith
ans =9×1单元阵列{“男性”}{[38]}{县综合医院的}{[71]}{[176]}{[1]}{[124]}{[93]}{‘优秀’}
指定数据变量
从电子表格到表中读取数据。使用电子表格的第一列作为行表的名称。显示前三行。
T1 = readtable (“patients.xls”,“ReadRowNames”,真正的);头(T1, 3)
性别年龄位置身高体重吸烟者收缩压舒张压SelfAssessedHealthStatus __________ ___看上去_____________________________长得一样________ _____ ________________________史密斯{‘男性’}38{县综合医院的}71年约翰逊176真正的124 93{‘优秀’}{‘男性’}43 {VA医院的}69威廉姆斯163错误109 77{‘公平’}{‘女性’}{38的圣。玛丽的医学中心}64 131错误125 83{‘好’}
调整指定变量T1
和抛弃。指定数据变量的名字,使用单元阵列的特征向量。
T2 = rows2vars (T1,“DataVariables”,{“性别”,“年龄”,“高度”,“重量”});T2 (: 1:4)
ans =4×4表史密斯OriginalVariableNames约翰逊威廉姆斯_____________________说__________{‘性别’}{‘男性’}{‘男性’}{‘女性’}{‘年龄’}{[38]}{[43]}{[38]}{“高度”}{[71]}{[69]}{[64]}{“重量”}{[176]}{[163]}{[131]}
您还可以指定变量的数据输入表中的位置。指定的位置变量,使用数值数组。
T3 = rows2vars (T1,“DataVariables”六9],[1 2);T3 (: 1:4)
ans =6×4表史密斯OriginalVariableNames约翰逊威廉姆斯____________________________ _________________ ________ __________{‘性别’}{‘男性’}{‘男性’}{‘女性’}{‘年龄’}{[38]}{[43]}{[38]}{“烟民”}{[1]}{[0]}{[0]}{“收缩”}{[124]}{[109]}{[125]}{舒张的}{[93]}{[77]}{[83]}{‘SelfAssessedHealthStatus}{‘优秀’}{‘公平’}{‘好’}
输入参数
T1
- - - - - -输入表
表|时间表
输入表,指定为一个表或时间表。
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:“VariableNamingRule”,“保存”
保留原来的名称取自T1
MATLAB,无需修改有效®标识符。
VariableNamesSource
- - - - - -变量T1
包含变量名称
特征向量|字符串标量|正整数|逻辑向量
变量T1
包含变量名称,指定为逗号分隔组成的“VariableNamesSource”
和一个特征向量,字符串标量,正整数,或逻辑向量。的rows2vars
解释的价值功能“VariableNamesSource”
如表所示。
的价值 |
意义 |
---|---|
特征向量或字符串标量 |
输入表中一个变量的名称 |
整数 |
的n th变量T1 。 |
逻辑向量的长度等于变量的数量 |
的 |
时的值“VariableNamesSource”
必须是一个名称、数量或逻辑数组,指定一个表变量,变量本身可以有任何数据类型,这些限制。
表中包含的值指定的变量必须有一个数据类型允许的值转换为字符串。例如,的价值
“VariableNamesSource”
可以包含一个表变量的名称吗datetime
数组,因为datetime
值可以转换为字符串。人名的数目从指定表变量必须匹配输入表的行数。
DataVariables
- - - - - -选择变量T1
字符串数组|特征向量|单元阵列的特征向量|模式
标量|正整数|向量的正整数|逻辑向量|下标对象
选择变量T1
,指定为逗号分隔两人组成的“DataVariables”
和一个字符串数组,特征向量,单元阵列的特征向量,模式
标量、正整数向量的正整数,逻辑向量,或下标对象。的rows2vars
函数选择指定的变量值“DataVariables”
并且只有那些变量的行T2
。其余的变量T1
被丢弃。
VariableNamingRule
- - - - - -规则命名变量T2
“修改”
(默认)|“保存”
规则命名变量T2
,指定为逗号分隔两人组成的“VariableNamingRule”
和的值“修改”
或“保存”
。
的值“VariableNamingRule”
指定以下规则命名变量输出表中或时间表。
的价值 |
规则 |
---|---|
|
修改名字取自输入表或时间表,以便相应的输出的变量名也有效的MATLAB标识符。 |
|
保留原来的名称取自输入表或时间表。对应的输出变量名可以有Unicode®字符,包括空格和非ascii字符。 注意:在某些情况下,
|
扩展功能
C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。
使用笔记和限制:
不支持时间表。金宝app
输入表不能适应。
的
“VariableNamesSource”
不支持名称参数。金宝app的值
“DataVariables”
名称-值参数必须是常数。的值
“DataVariables”
名称-值参数不支持模式表达式。金宝app的值
“VariableNamingRule”
名称-值参数必须是常数。如果你分配行名称输入表,然后行向量的名称必须是常数。
版本历史
介绍了R2018a
打开举例
你们possedez一个版本modifiee de cet(中央东部东京)为例。Souhaitez-vous打开cet(中央东部东京)为例用vos修改吗?
对MATLAB
你们有派对在联合国留置权,对应这个对MATLAB:
倒实行la对saisissez-la在fenetre德对MATLAB。Les navigateurs web不sup金宝appportent Les MATLAB命令。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。