主要内容

splitvars

分解表或时间表中的多列变量

描述

例子

T2 = splitvars (T1中分割所有多列变量T1所以它们是单列变量T2(见图)。所有的单列变量T1是不变的。

  • 如果一个变量T1有多个列,那么splitvars使新变量的唯一名称T2中的原始变量名T1

  • 如果一个变量T1那么,它本身就是一张桌子吗splitvars使用它的变量名(如果需要,还可以使用表名)来为新变量创建惟一的名称T2

要将变量合并为一个多列变量,请使用mergevars函数。

例子

T2 = splitvars (T1var只拆分指定的表变量var.您可以通过名称、位置或使用逻辑索引指定变量。

例子

T2 = splitvars (T1var“NewVariableNames”,新名称为分离出来的指定变量分配新名称T1和复制到T2

例子

全部折叠

从工作区变量创建一个表。有些变量是多列矩阵。

= (1:3) ';B = [5 11 12;20 30 50;0.1 3.4 5.9]”;C = {“一个”“XX”“b”“YY”“c”“ZZ”};D = [128 256 512]';T1 =表(A, B, C, D)
T1 =3×4表A B C D  _ ________________ _______________ ___ 1 5 20 0.1 {a} {' XX '} 128 2 11 30 3.4 {b} {YY的}256年3 12 50 5.9 {' c '}{}“ZZ”512

把变量BC.输出表中的所有变量都有一列。

T2 = splitvars (T1)
T2 =表3×7一个B_1 B_2 B_3 c₁₂D  _ ___ ___ ___ _____ ______ ___ 1 5 20 0.1 {a} {' XX '} 128 2 11 30 3.4 {b} {YY的}256年3 12 50 5.9 {' c '}{}“ZZ”512

控件中的数据数组创建包含表的表patients.mat文件。显示前三行。

负载病人Personal_Data =表(性别、年龄);BMI_Data =表(身高、体重);血压=表(收缩压、舒张压);T1 =表(LastName、Personal_Data BMI_Data,血压);头(T1, 3)
ans =3×4表LastName Personal_Data BMI_Data性别年龄身高体重血压收缩压舒张压  ____________ _________________ ________________ _____________________ {' 史密斯}{‘男性’}38 71 176 124 93{“约翰逊”}{‘男性’}43 69 163 109 77{威廉姆斯的}{‘女性’}38 64 131 125 83

指定血压作为要分割的变量。

T2 = splitvars (T1,“血压”);头(T2, 3)
ans =3×5表性别年龄身高体重LastName Personal_Data BMI_Data收缩压舒张压  ____________ _________________ ________________ ________ _________ {' 史密斯}{‘男性’}38 71 176 124 93{“约翰逊”}{‘男性’}43 69 163 109 77{威廉姆斯的}{‘女性’}38 64 131 125 83

若要按名称指定多个变量,请使用字符向量的单元格数组。

T3 = splitvars (T1, {“BMI_Data”“血压”});头(T3, 3)
ans =3×6表LastName Personal_Data性别年龄身高体重收缩压舒张压  ____________ _________________ ______ ______ ________ _________ {' 史密斯}{‘男性’}38 71 176 124 93{“约翰逊”}{‘男性’}43 69 163 109 77{威廉姆斯的}{‘女性’}38 64 131 125 83

若要按位置指定变量,请使用数字数组。

T4 = splitvars(T1,[2 4]);头(T4, 3)
ans =3×6表LastName性别年龄BMI_Data收缩舒张身高体重  ____________ __________ ___ ________________ ________ _________ {' 史密斯}{‘男性’}38 71 176 124 93{“约翰逊”}{‘男性’}43 69 163 109 77{威廉姆斯的}{‘女性’}38 64 131 125 83

的数据创建包含多列变量的表patients.mat文件。显示前三行。

负载病人Personal_Data =(年龄、身高、体重);血压=(收缩压、舒张压);T1 =表(LastName、性别、Personal_Data、血压);头(T1, 3)
ans =3×4表LastName性别Personal_Data血压  ____________ __________ ________________ _____________ {' 史密斯}{‘男性’}38 71 176 124 93{“约翰逊”}{‘男性’}43 69 163 109 77{威廉姆斯的}{‘女性’}38 64 131 125 83

分裂血压并为输出表中的新变量指定新名称。

T2 = splitvars (T1,“血压”“NewVariableNames”, {“收缩”舒张压的});头(T2, 3)
ans =3×5表LastName性别Personal_Data收缩压舒张压  ____________ __________ ________________ ________ _________ {' 史密斯}{‘男性’}38 71 176 124 93{“约翰逊”}{‘男性’}43 69 163 109 77{威廉姆斯的}{‘女性’}38 64 131 125 83

分开两个BMI_Data血压.对于拆分的每个变量,必须提供具有正确数量的新名称的单元格数组。

T3 = splitvars (T1, {“Personal_Data”“血压”},...“NewVariableNames”{{“年龄”“高度”“重量”}, {“收缩”舒张压的}});头(T3, 3)
ans =表3×7LastName性别年龄身高体重收缩压舒张压  ____________ __________ ___ ______ ______ ________ _________ {' 史密斯}{‘男性’}38 71 176 124 93{“约翰逊”}{‘男性’}43 69 163 109 77{威廉姆斯的}{‘女性’}38 64 131 125 83

输入参数

全部折叠

输入表,指定为表或时间表。

输入表中的变量,指定为字符向量、字符向量单元格数组、字符串数组、数字数组或逻辑数组。

分割变量的名称,指定为字符向量或字符串数组的单元格数组。

扩展功能

介绍了R2018a