文档

splitvars

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

语法

T2 = splitvars(T1)
T2 = splitvars(T1,vars)
T2 = splitvars(___、“NewVariableNames”新名称)

描述

例子

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

  • 如果一个变量T1有多个列,那么splitvars为中的新变量创建唯一的名称T2从原变量的名称中T1

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

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

例子

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

例子

T2 = splitvars(___“NewVariableNames”,新名称指定新名称作为拆分和复制到的变量的名称T2

例子

全部折叠

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

A = (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 ' ' ' XX ' 128 2 11 30 3.4 b YY 256 3 12 50 5.9“c”“ZZ”512

拆分变量B而且C.输出表中的所有变量都有一列。

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

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

负载病人Personal_Data =表(性别,年龄);BMI_Data = table(身高,体重);血压=表(收缩压,舒张压);T1 = table(LastName,Personal_Data,BMI_Data,血压);头(T1, 3)
ans = 3x4表姓氏个人数据BMI_Data血压性别年龄身高体重收缩压舒张压__________ _______________ ________________ _____________________“史密斯”“男性”38 71 176 124 93“约翰逊”“男性”43 69 163 109 77“威廉姆斯”“女性”38 64 131 125 83

指定血压作为分裂的变量。

T2 = splitvars(T1,“血压”);头(T2, 3)
ans = 3x5表姓氏个人数据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 = 3x6表姓氏个人数据身高体重收缩期舒张期性别年龄__________ _______________ ____________ ________ _________“史密斯”“男性”38 71 176 124 93“约翰逊”“男性”43 69 163 109 77“威廉姆斯”“女性”38 64 131 125 83

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

T4 = splitvars(T1,[2 4]);头(T4, 3)
ans = 3x6表姓氏性别年龄BMI_Data收缩压舒张身高体重__________ ___________ ________________ ________ _________“史密斯”“男性”38 71 176 124 93“约翰逊”“男性”43 69 163 109 77“威廉姆斯”“女性”38 64 131 125 83

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

负载病人Personal_Data =[年龄,身高,体重];血压=[收缩压,舒张压];T1 = table(LastName,性别,Personal_Data,血压);头(T1, 3)
ans =3×4表LastName性别Personal_Data血压  __________ ________ ________________ _____________ ' 史密斯' '男' 38 71 176 124 93年约翰逊“男性“43 69 163 109 77”Williams ' '女' 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”Williams ' '女' 38 64 131 125 83

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

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

输入参数

全部折叠

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

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

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

在R2018a中引入

这个话题有用吗?