具有可包含不同类型的命名变量的表数组
桌子
阵列存储面向列或表格数据,例如来自文本文件或电子表格的列。表格存储每个面向列的数据变量。表变量可以有不同的数据类型和大小,只要所有变量具有相同的行数。表变量有名称,就像结构的字段有名称一样。使用概括
获取有关表的信息的功能。
要索引到表中,请使用流畅的括号()
返回子表或花括号{}
提取内容。您可以使用名称访问变量和行。有关使用数字和名称建立索引的更多信息,请参见表格访问数据。
方法可以将数据从文件中读入表导入工具
或者readtable
函数。或者,使用桌子
下面描述的函数以创建来自现有工作区变量的表。
您还可以创建一个表,为以后填充其值的变量提供空间。要创建具有预分配变量空间的表,请使用桌子
函数与'尺寸'
作为第一个输入参数,如下所述。
t =表(
从输入变量创建表var1,...,变华
)var1,...,变华
。变量可以具有不同的大小和数据类型,但所有变量必须具有相同数量的行。
如果输入是工作区变量,那么桌子
将其名称分配为输出表中的变量名称。除此以外,桌子
形式的受让人的变量名'VAR1',......,“瓦尔
, 在哪里N
'
为变量的个数。N
T =表
创建一个空的0乘0表。
var1,...,变华
- - - - - -输入变量输入变量,指定为具有相同行数的数组。输入变量可以有不同的大小和不同的数据类型。
公共输入变量是数字阵列,逻辑阵列,字符数组,结构数组,或细胞阵列。输入变量也可以是数组对象。这样的阵列必须支持形式索引金宝appvar(index1,...,indexn)
, 在哪里index1
是一个数字或逻辑向量,对应于该变量的行VAR
。此外,阵列必须实现aVertcat.
方法和一种大小
方法昏暗的
论点。
例子:表([1:4]”,(4、3、2)、眼睛(4,2))
从具有四行但大小不同的变量创建表。
例子:表([1:3]”,{“一”,“两个”;“三个”},分类({' A ', ' B '; ' C '}))
用三行不同数据类型的变量创建表。
SZ.
- - - - - -预分配表的大小预分配表的大小,指定为双元数字矢量。第一个元素SZ.
指定行数,第二个元素指定表变量的数量。
若要只创建变量而不创建任何行,请指定0
作为第一个元素SZ.
。
例子:T =表( '尺寸',[50 3], '变量类型',{ '字符串', '双', '日期时间'})
预先分配50行对包含一个字符串数组,双阵列,和一个日期时间阵列的表。
例子:T = table('Size',[0 4],'VariableTypes',varTypes)
指定零行和四个变量。
vartypes.
- - - - - -预曝种变量的数据类型预先分配的变量的数据类型,指定为字符向量的单元格数组或字符串数组。指定的类型的数量vartypes.
必须等于?的第二个元素指定的变量数SZ.
。
vartypes.
可以包含任何数据类型的名称,包括表中显示的名称。
数据类型名称 |
每个元素的初始值 |
---|---|
|
双或单精度 |
|
双或单精度 |
|
签名8-,16-,32-或64位整数 |
|
无符号的8-,16-,32-,或64位整数 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
没有字段的标量结构 |
|
无变量表 |
|
没有变量的时间表 |
对于任何其他数据类型,初始值是用于通过该类型或类“中填充”的阵列的未分配的元素的值。
如果您指定“字符”
作为一种数据类型桌子
将相应的变量预配为字符向量的小区阵列,而不是作为字符阵列。最佳实践是避免创建具有字符数组的表或时间表变量。使用表中的文本数据或时间表时,请考虑使用字符串数组或分类数组。
指定可选的逗号分隔的对名称,值
参数。姓名
参数名和价值
是相应的价值。姓名
必须出现在引号内。您可以以任何顺序指定多个名称和值对参数Name1, Value1,…,的家
。
T =表(rowTimes, X, Y, VariableNames,{纬度,经度的})
从输入数组创建表X
和Y
,并命名相应的表变量纬度
和经度
。
“VariableNames”
- - - - - -变量名变量名,指定为字符向量的单元格数组或元素为非空且不同的字符串数组。
数组中的名称数必须等于表变量的数量。
的桌子
函数还将变量名存储在VariableNames
该表的属性。
变量名称可以有任何unicode®字符,包括空格和非ascii字符。
'RowNames'
- - - - - -行名称行名,指定为字符向量的单元格数组或元素为非空且不同的字符串数组。
数组中的名称数必须等于行数。
的桌子
函数中还存储行名RowNames
该表的属性。
行名可以有任何Unicode字符,包括空格和非ascii字符。
的桌子
函数从该行名称的任何开头或结尾空白字符。
例子:表(T =(10、20、30),{' M ', ' F '; ' F '}, VariableNames,{“年龄”、“性别”},RowNames, {P1, P2, P3的})
创建一个包含变量名和行名的表。
'DimensionNames'
- - - - - -维度名称自从R2021a
尺寸名称,指定为字符向量或两个元素的字符串数组,其元素是非空的和不同的两元件单元阵列。
的桌子
函数中还存储维度名称DimensionNames
该表的属性。
维度名称可以具有任何Unicode字符,包括空格和非ASCII字符。
在R2021A之前,您只能通过设置尺寸名称来指定维度名称DimensionNames
财产。
访问表元数据属性
表包含描述表及其变量的元数据属性。使用语法访问这些属性
, 在哪里的表
。特性。PropertyName
属性的名称。例如,您可以访问表中变量的名称PropertyName
T
使用语法t.properties.variablenames.
。
您可以使用语法返回所有元数据属性的摘要
。的表
. properties
表通过特性
属性,因为您可以使用点语法直接访问表数据。例如,如果表T
有一个名为Var1
,然后您可以使用语法访问变量中的值T.var1.
。
DimensionNames
- - - - - -维度名称{“行”,“变量”}
(默认)|字符向量的两个元素单元阵列|双元素字符串数组维度名称,指定为字符向量的双元素单元数组或双元素字符串数组。
维度名称可以具有任何Unicode字符,包括空格和非ASCII字符。
如果使用字符串数组指定此属性,则将其转换并存储为字符向量的单元格数组。
您可以使用两维名称访问表数据。
如果表有行名称,并且使用点语法和第一维名称,则可以将行名称作为向量访问。
如果您使用点语法和第二个维度名称,那么来自所有变量的数据将连接在一个数组中,就像您使用{:,:}
语法。
创建一个表并显示其维度名称。您可以使用带有点语法的尺寸名称访问行名称和数据。
负载病人T =表(年龄、身高、体重、收缩压,舒张压,...'RowNames'、LastName);T.Properties.DimensionNames
ans =1 x2单元格{ '行'} { '变量'}
使用第一个维度名称访问行名称。显示前5个名字。
T.Row (1:5)
ans =5x1细胞{“史密斯”}{“约翰逊”}{威廉姆斯的}{“琼斯”}{“棕色”}
使用第二个维度名称访问数据。该语法等价于T {:,:}
。
T.Variables
ans =100×538 43 71 176 124 93 69 64 131 125 163 109 77 83 64 119 122 80 67 133 117 75 49 46 68 33 142 121 70 64 142 130 88 68 183 115 78 68 180 115 82 28⋮31 66 132 118 86
使用该文件修改其尺寸的名称属性。DimensionNames
财产。更改了维度名称,您可以使用语法访问行名称和数据T.Patient.
和T.Data
分别。
T.Properties.DimensionNames = {“病人”,'数据'};T.Properties
ans = tableProperties具有属性:描述:''userdata:[] dimensionnames:{'患者'数据'} variablenames:{'年龄''height''重量''systolic''indstolic'} variadescriptions:{}变量:{variaBlecontinuity:[] Rownames:{100x1 Cell} CustomProperties:没有设置自定义属性。使用addprop和rmprop修改CustomProperties。
RowNames
- - - - - -行名称{}
(默认)|字符向量的单元格数组|字符串数组行名,指定为字符向量的单元格数组或元素为非空且不同的字符串数组。如果RowNames
不为空,则行名的数目必须等于表中的行数。
行名可以有任何Unicode字符,包括空格和非ascii字符。
如果您用前导或尾随空格字符分配行名,则MATLAB®从行名称中删除它们。
在查看表时,行名是可见的。此外,您可以使用圆括号或花括号中的行名来访问表数据。
访问行名称的另一种方法是使用点语法和表格的第一维度的名称。
如果使用字符串数组指定此属性,则将其转换并存储为字符向量的单元格数组。
创建一个表。然后添加行名并按行名访问行。
负载病人T =表(性别,年龄,身高,体重,吸烟者,收缩,舒张);
属性添加行名属性。RowNames
财产。默认情况下,表没有行名,但您可以随时添加它们。
T.Properties.RowNames =姓;头(T, 4)
ans =.表4×7性别年龄高分体重吸烟收缩舒张______________________________________________________________________ {'male'} 43 69 163 false 109 77威廉姆斯{女性'} 38 64 131 false 125 83琼斯{女性'} 40 67 133假117 75
访问行名称的另一种方法是使用点语法与表的第一维度的名称。显示前五个行的名称。
T.Properties.DimensionNames
ans =1 x2单元格{ '行'} { '变量'}
T.Row (1:5)
ans =5x1细胞{“史密斯”}{“约翰逊”}{威廉姆斯的}{“琼斯”}{“棕色”}
按行名索引到表中。
T ({'史密斯',“威廉姆斯”},:)
ans =.2×7表性别年龄身高体重吸烟者收缩压舒张压 __________ ___ ______ ______ ______ ________ _________ 史密斯{‘男性’}38 71 176真正的124 93威廉姆斯{‘女性’}38 64 131错误125 83
描述
- - - - - -表描述''
(默认)|特征向量|字符串标量表描述,指定为字符向量或字符串标量。使用时,该描述是可见的概括
函数。
如果使用字符串标量指定此属性,则将其转换并存储为字符向量。
创建一个表。修改表的说明。显示结果的摘要。
负载病人T =表(性别、年龄、身高、体重);T.Properties.Description =模拟病人数据的;摘要(t)
描述:模拟患者数据变量:性别:100x1字符向量细胞数组年龄:100x1双值值:Min 25中位数39 Max 50身高:100x1双值值:Min 60中位数67 Max 72体重:100x1双值值:Min 111中位数142.5 Max 202
用户数据
- - - - - -附加表信息[]
(默认)|数组附加表信息,指定为一个数组。您可以将任何类型的数据,使用属性的表。
创建一个表。附加一个匿名函数作为与表相关联的用户数据。
负载病人T =表(性别,年龄,身高,体重,吸烟者,收缩,舒张);式= @(X)X ^ 2。T.Properties.UserData =式;T.Properties
说明:" UserData: @(x)x。^2 DimensionNames: {'Row' 'Variables'} VariableNames: {1x7 cell} VariableDescriptions: {} VariableUnits: {} variableccontinuity: [] RowNames: {} CustomProperties:不设置自定义属性。使用addprop和rmprop修改CustomProperties。
VariableNames
- - - - - -变量名变量名,指定为字符向量的单元格数组或元素为非空且不同的字符串数组。名称的数目必须等于变量的数量。
变量名可以有任何Unicode字符,包括空格和非ascii字符。
变量名在查看表和使用时是可见的概括
函数。此外,您可以在圆括号、花括号或点索引中使用变量名来访问表数据。
如果使用字符串数组指定此属性,则将其转换并存储为字符向量的单元格数组。
创建一个带有默认变量名的表。然后使用属性。VariableNames
财产。
表(T = {'M';'M';“F”;“F”;“F”},[38, 43岁,38;40;49),...(71; 69; 64; 67; 64], [176; 163; 131; 133; 119))
T =5×4表Var1 Var2 Var3 Var4 _____ ____ ____ ____ {' 176} 38 71{“M”}43 69 163 {' F '} 38 64 131 {' F '} 40 67 133 {' F '} 49 64 119
T.Properties.VariableNames = {“性别”,'年龄',“高度”,'重量'}
T =5×4表性别年龄身高体重 ______ ___ ______ ______ {' 176} 38 71{“M”}43 69 163 {' F '} 38 64 131 {' F '} 40 67 133 {' F '} 49 64 119
显示和修改变量的基本方法是使用DOT语法按名称访问它们。
T.Age
ans =5×138 43 38 40 49
T.age(1)= 53
T =5×4表性别年龄高度重量______ ____ ______ {'m'} 53 71 176 {'f'} 43 64 131 {'f'} 40 67 131 {'f'} 49 64 119 64 119 64 119
VariableDescriptions
- - - - - -变量描述{}
(默认)|字符向量的单元格数组|字符串数组该属性可以是空的单元格数组,这是默认值。如果数组不是空的,那么它必须包含和变量一样多的元素。可以为没有描述的变量指定单独的空字符向量或空字符串。
的变量描述是可见的概括
函数。
如果使用字符串数组指定此属性,则将其转换并存储为字符向量的单元格数组。
创建一个表。修改变量描述。显示结果的摘要。
负载病人T =表(性别,年龄,身高,体重,吸烟者,收缩,舒张);t.properties.variabledescriptions = {'','','','',...“病人以前抽烟吗?”,...收缩压的,“舒张压”};摘要(t)
变量:性别:100x1细胞字符矢量年龄:100x1双重值:min 25中位数39 max 50高度:100x1双重值:min 60中间值67最大72重量:100x1双重值:min 111中位数142.5 max 202吸烟者:100x1逻辑性质:描述:患者是否曾经是吸烟者价值:TRUE 34 FALSE 66收缩量:100x1双倍物业:描述:收缩压值:MIN 109中位数122 MAX 138舒张:100x1双人特性:描述:舒张压值:MIN 68中位数81.5最多99.
VariableUnits
- - - - - -变量的单位{}
(默认)|字符向量的单元格数组|字符串数组可变单元,指定为字符向量的单元格数组或字符串数组。此属性可以是空单元格数组,这是默认值。如果数组不是空的,那么它必须包含和变量一样多的元素。可以为没有单元的变量指定单独的空字符向量或空字符串。
变量单位在使用时是可见的概括
函数。
如果使用字符串数组指定此属性,则将其转换并存储为字符向量的单元格数组。
创建一个表。修改可变单元。显示结果的摘要。
负载病人T =表(性别,年龄,身高,体重,吸烟者,收缩,舒张);T.Properties.VariableUnits = {'',“年”,“在”,“磅”,'',毫米汞柱的,毫米汞柱的};摘要(t)
变量:性别:100X1双重性质:单位:字符向量年龄的100X1单元阵列22岁值:最少25个中值39最大50高度:100X1双重性质:单位:在值:最小60中值67最大72重量:100X1双重性质:单位:磅值:最小111平均142.5最大202吸烟者:100X1逻辑值:True 34假66收缩:100X1双重性质:单位:毫米汞柱的值:最小109平均122最大138舒张:100X1双重性质:单位:毫米汞柱的值:最小68中值81.5最大值99
VariableContinuity
- - - - - -连续或离散变量的状态[]
(默认)|字符向量的单元格数组|字符串数组连续或离散变量的状态,指定为字符向量的单元格数组或字符串数组。
虽然表和时间表都具有此属性,但只有时间表使用它。有关更多信息,请参阅VariableContinuity
的属性时间表
。
CustomProperties
- - - - - -表及其变量的自定义元数据CustomProperties
对象表及其变量的定制元数据,指定为CustomProperties
对象。
的CustomProperties
对象是可添加到表中的定制元数据的容器。默认情况下,CustomProperties
为零的属性。添加到的每个属性CustomProperties
可以包含表元数据或变量元数据。如果属性包含变量元数据,那么它的值必须是一个数组,数组中的元素数量必须等于表变量的数量。
注意:您可以添加或删除只有属性用于自定义元数据addprop
和rmprop
。控件的属性不能添加或删除
对象。的表
. properties
创建一个表。
负载病人T =表(性别,年龄,身高,体重,吸烟者,收缩,舒张);
添加可以保存关于表及其变量的自定义元数据的属性。在本例中,元数据是工具的名称,真的
和假
指示是否绘制变量的值以及输出文件的名称。要添加属性,请使用addprop
函数。
T = addprop (T) {'仪器','toplot',“OutputFile”},{“变量”,“变量”,“表”});T.Properties
ANS =具有属性的TableProperties:Description:''''userdata:[] dimensionnames:{'行'变量'} variablenames:{1x7 cell} variabledes:{}变量:{} variablecontion:{} variablecontion:[] Rownames:{}自定义属性(访问使用t.properties.customproperties。):outputfile:[]仪器:[] toplot:[]
使用点语法为定制的元数据赋值。将文本值数组分配给自定义元数据时,最佳实践是使用字符串数组,而不是字符向量的单元格数组。如果CustomProperties
是字符向量的单元格数组,则没有机制阻止您以后将非文本值作为单元格数组的元素分配。
T.Properties.CustomProperties.Instrument = ["","",“高度杆”,“规模”,"",“血压袖带”,“血压袖带”];T.Properties.CustomProperties.ToPlot = [false false true true true];T.Properties.CustomProperties.OutputFile =“patientData.csv”;T.Properties
ANS =具有属性的TableProperties:Description:''''userdata:[] dimensionnames:{'行'变量'} variablenames:{1x7 cell} variabledes:{}变量:{} variablecontion:{} variablecontion:[] Rownames:{}自定义属性(访问使用t.Properties.CustomProperties <名称>):OUTPUTFILE: 'patientData.csv' 仪器:[1X7字符串] ToPlot:[0 0 1 1 0 1 1]
去除那个OutputFile
的财产T
。
T = rmprop (T)“OutputFile”);T.Properties
ans = TableProperties属性:描述:“用户数据:[]DimensionNames:{“行”“变量”}VariableNames: {1} x7细胞VariableDescriptions: {} VariableUnits: {} VariableContinuity: [] RowNames:{}自定义属性(访问使用t.Properties.CustomProperties。<名称>):仪器:[1 x7字符串]如何:(0 0 1 1 0 1 1)
存储有关一组桌子的患者的数据。您可以在同一表中执行计算并存储结果。此外,您可以注释表格来描述您的工作和表格的变量。
首先,创建具有患者数据的工作空间的变量。变量可以具有任何数据类型,但必须具有相同的行数。
LastName = {'桑切斯';“约翰逊”;“李”;“Diaz”;'棕色的'};年龄=[38,43岁,38;40;49);吸烟者=逻辑([1,0,1,0,1]);身高= [71;69;64;67;64);重量= [176;163;131;133;119);血压= [1293;109 77;125 83;117 75;122 80);
创建一个表,T
,作为工作区变量的容器。的桌子
函数使用工作区变量名作为中的表变量名T
。一个表变量可以有多个列。例如,血压
变量是一个5乘2的数组。
T =表(LastName、年龄、抽烟,身高、体重、血压)
T =5×6表姓年龄吸烟者身高体重血压___________ _________ ____________ _____________ {'Sanchez'} 38真71 176 124 93 {'Johnson'} 43假69 163 109 77 {'Li'} 38真64 131 125 83 {'Diaz'} 40假67 133 117 75 {'Brown'} 49真64 119 122 80
您可以使用点索引来访问表变量。例如,使用中的值计算患者的平均身高T.Height.
。
meanHeight =意味着(T.Height)
meanHeight = 67
计算身体质量指数(BMI),并将其添加为一个新的表变量。您还可以使用点语法在一步中添加和命名表变量。
T.BMI =(T.Weight * 0.453592)./(T.Height * 0.0254)。^ 2
T =5×7表LASTMAME AGE SAFTER HEACE PERFICE FLACE血压BMI __________________________________________________________________________________________'''1297 23 24.071{'diaz'} 40 false 67 133 117 75 20.831 {'brown'} 49 TRUE 64 119 122 80 20.426
用BMI计算的描述注释表格。你可以注释T
并使用元数据的变量通过访问T.Properties
。
T.Properties.Description =“患者数据,包括根据身高和体重计算的身体质量指数(BMI)”;T.Properties
ans = TableProperties属性:描述:“病人数据,包括身体质量指数(BMI)计算身高和体重的用户数据:[]DimensionNames:{“行”“变量”}VariableNames: {1} x7细胞VariableDescriptions: {} VariableUnits: {} VariableContinuity: [] RowNames: {} CustomProperties:不设置自定义属性。使用addprop和rmprop修改CustomProperties。
使用表的第二个维度的名称,以矩阵的形式访问表中的所有数据。
创建一个包含五行关于一组患者的数据的表。
年龄=[38,43岁,38;40;49);吸烟者=逻辑([1,0,1,0,1]);身高= [71;69;64;67;64);重量= [176;163;131;133;119);血压= [1293;109 77;125 83;117 75;122 80);T =表(年龄、吸烟、身高、体重、血压)
T =5×5表年龄吸烟者身高体重血压_________ ____________ _____________ 38真71 176 124 93 43假69 163 109 77真64 131 125 83 40假67 133 117 75 49真64 119 122 80
属性显示表维度的名称DimensionNames
财产。第二个维度的默认名称是变量
。
T.Properties.DimensionNames
ans =1 x2单元格{ '行'} { '变量'}
使用语法访问该表数据作为基质T.Variables
。这个语法相当于使用花括号语法访问所有内容,T {:,:}
。如果表数据不能连接到矩阵,则提出错误消息。
T.Variables
ans =5×638 1 71 176 124 93 43 0 69 163 109 77 38 1 64 131 125 83 40 0 67 133 117 75 49 1 64 119 122 80
重命名第二个维度。如果更改名称,则可以使用新名称访问数据。
t.properties.dimensionnames {2} ='upartdata';T.PatientData
ans =5×638 1 71 176 124 93 43 0 69 163 109 77 38 1 64 131 125 83 40 0 67 133 117 75 49 1 64 119 122 80
通过指定表的大小和变量的数据类型来预分配表。的桌子
函数使用适合于您指定的数据类型的默认值填充变量。它还为变量提供默认名称,但您也可以为自己的变量指定名称。预分配为以后添加到表中的数据提供了空间。
Sz = [4 3];varTypes = {“双”,'约会时间','细绳'};t =表('尺寸',SZ,'variabletypes',varTypes)
T =4×3表var1 var2 var3 ____ ____ _________ 0 NAT <缺失> 0 NAT <缺失> 0 NAT <缺失> 0 NAT <缺失>
要指定变量的名称,请使用“VariableNames”
名称-值对的论点。
varNames = {“温度”,“时间”,“站”};T2 =表('尺寸',SZ,'variabletypes',varTypes,“VariableNames”varNames)
T2 =4×3表温度时间站___________ ____ _________ 0的NaT <缺失> 0的NaT <缺失> 0的NaT <缺失> 0的NaT <缺失>
的前两行添加数据行T2
。当代码添加一行数据或几行数据时,预先列区可以是有用的技术。每次添加行时,而不是在每次添加表时,您可以填写已经为您的数据有空间的表变量。
T2 (1) = {75 datetime ('现在'),“S1”};T2 (2) = {68 datetime ('现在') + 1,“S2”}
T2 =4×3表温度时间站 ___________ ____________________ _________ 75年2月23 - - 2021 14:41:31“S1”68年2月24 - - 2021 14:41:31“S2”NaT失踪> < 0 NaT失踪> <
您可以在单元格数组中封装一行数据值。从单元数组中分配行时,单元格数组的元素被分配给表中的行。
从数组中创建表。要指定表变量名,请使用“VariableNames”
名称-值对的论点。例如,你可以用“VariableNames”
指定当其他输入参数不是工作区变量时的名称。
表(分类(T = {'M';“F”;'M'}),[45; 32; 34],...{“纽约”;'CA';'嘛'}、逻辑((1,0,0)),...“VariableNames”,{“性别”,'年龄','状态','投票'})
T =3×4表性别年龄表决______ ______________ m 45 {'ny'}真正的f 32 {'ca'}假m 34 {'ma'} false
创建一个表与状态名称为行名称。您可以指定“VariableNames”
和'RowNames'
使用时的名称 - 值对桌子
函数。
表(分类(T = {'M';“F”;'M'}),[45; 32; 34],逻辑([1; 0; 0]),...“VariableNames”,{“性别”,'年龄','投票'},...'RowNames',{“纽约”;'CA';'嘛'})
T =3×3表性别年龄投票______ ___ _____ NY M 45真CA F 32假MA M 34假
指定表的行名。表不一定要有行名,但是如果指定了行名,就可以根据行名索引到表中。您还可以使用表的第一个维度的名称访问行名称集。
创建包含患者数据的数组。
LastName = {'桑切斯';“约翰逊”;“李”;“Diaz”;'棕色的'};年龄=[38,43岁,38;40;49);身高= [71;69;64;67;64);重量= [176;163;131;133;119);
创建包含阵列的表。指定姓
作为表的行名来源。该表只有三个变量。行名不是表变量,而是表的属性。
T =表(年龄、体重、身高、'RowNames'、LastName)
T =5×3表年龄重量高度___ ______ ______桑切斯38 176 71 johnson 43 163 69 lee 38 131 64 diaz 40 133 67棕色49 119 64
由于行有行名,您可以索引到的行T
的名字。
T (“李”:)
ans =.1×3表年龄重量高度___ ______ ______ lee 38 131 64
指定多个行,可使用一个单元阵列。
T ({“李”,'棕色的'},:)
ans =.2×3表年龄体重身高___ ______ ______李38 131 64布朗49 119 64
的所有行名T
作为单元格数组,使用语法t.row.
。默认情况下,行
是表的第一个维度的名称。
t.row.
ans =5x1细胞{'桑切斯'} {'Johnson'} {'李'} {'diaz'} {'brown'}
更改第一个维度的名称。如果更改名称,则可以使用新名称访问行名称。
T.Properties.DimensionNames{1} =“姓”;t.lastnames.
ans =5x1细胞{'桑切斯'} {'Johnson'} {'李'} {'diaz'} {'brown'}
从R2017a开始,您可以使用双引号创建字符串,并添加字符串数组作为表变量。
FlightNum = (1261; 547; 3489);客户= [“琼斯”;“棕色的”;“史密斯”];日期= datetime(2016年,12日20:22)';评级=分类([“好”;“穷”;“公平”]);评论= [“按时离开,不拥挤”;...“晚点出发,没有晚餐选择了”;...“迟到了,但只迟到了半个小时。否则罚款。”];T =表(FlightNum,Customer,Date,评级,评论)
T =3×5表FlightNum客户评级评论日期 _________ ________ ___________ ______ _________________________________________________ 1261“琼斯”20 - 12月- 2016好”班机准时离开,而不是拥挤的“547”布朗“21 - 12月- 2016贫困“晚离开,跑出晚餐选择”3489“史密斯”22 - 12月- 2016年公平”晚了,但是只有半个小时。否则罚款。”
若要使用字符串数组中的文本作为行名,请将字符串数组转换为字符向量的单元格数组。然后创建一个带有行名的表。
客户= cellstr(客户);T =表(FlightNum、日期、评级,评论,'RowNames'、客户)
T =3×4表航班号码日期评价__________________________ _________________________________________________琼斯1261 2016年12月20日好“航班准时起飞,不拥挤”布朗547 2016年12月21日糟糕“晚点起飞,没有晚餐可供选择”史密斯3489 2016年12月22日公平“晚点,但只晚了半小时。否则罚款。”
创建工作区变量,包含三个地点不同日期的降雪总数。这些变量是行向量。
日期= {“12/25/11”,'1/2/12',“1/23/12”,'2/7/12',“2/15/12”};location1 = [20 5 13 0 17];位置2 = [18 9 21 5 12];位置3 = [26 10 16 3 15];
从这些变量创建表的一种方法是调用桌子
函数的语法T =表(日期',location1',location2',location3')
。因为工作区变量是行向量,所以必须对它们进行转置,将它们作为面向列的数据放入表中。因此,输入参数是表达式,而不是简单的变量。作为一个结果,桌子
创造T
使用默认变量名Var1
,Var2
,Var3
, 和Var4
。您可以分配更有意义的名称t.properties.variablenames.
在您创建T
。但是,创建一个空表,然后用新名称一次添加一个变量可能更方便。
创建一个空表。转换工作空间变量并将它们作为列向量添加到表中。作为分配每个工作区变量的一部分T
,为表变量提供有意义的名称。
T =表;T.Date =日期';T.Natick = LOCATION1' ;T.Boston = LOCATION2' ;T.Worcester = LOCATION3'
T =5×4表日期纳蒂克波士顿伍斯特 ____________ ______ ______ _________ {' 12/25/11’}20 18 26{‘1/2/12}5 9 10{‘1/23/12}13 21 16{‘2/7/12}0 5 3{‘2/15/12}17 12 15
从R2019b开始,可以指定不是有效的MATLAB®标识符的表变量名。这样的变量名可以包括空格、非ascii字符,并且可以使用任何字符作为前导字符。当您访问这样一个变量名时,请将其括起来。
创建一个存储关于一组患者的数据的表。从他们的年龄和吸烟身份开始。
年龄=[38,43岁,38;40;49);吸烟者=逻辑([1,0,1,0,1]);身高= [71;69;64;67;64);重量= [176;163;131;133;119);血压= [1293;109 77;125 83;117 75;122 80);T =表(年龄、吸烟)
T =5×2表年龄吸烟者___ ______ 38真43假38真40假49真
使用变量名添加血压读数“2019年5月29日血压读数”
。您可以使用点语法来添加或访问变量。因为它的名字不是一个有效的MATLAB标识符,使用圆括号和引号与点语法。
t (“2019年5月29日血压读数”) =血压
T =5×3表年龄吸烟者29- 5 -2019血压读数_________ __________________________________ 38真124 93 43假109 77 38真125 83 40假117 75 49真122 80
当表变量名称有效的MATLAB标识符时,您可以使用没有括号和引号的点语法。
T.Height =高度;T.Weight =体重
T =5×5表年龄吸烟者29- 5 -2019血压读数身高体重_________ __________________________________ ____________ 38真124 93 71 176 43假109 77 69 163 38真125 83 64 131 40假117 75 67 133 49真122 80 64 119
索引T
使用变量名。
T (:, {'年龄',“吸烟者”,“2019年5月29日血压读数”})
ans =.5×3表年龄吸烟者29- 5 -2019血压读数_________ __________________________________ 38真124 93 43假109 77 38真125 83 40假117 75 49真122 80
对这些输入名称使用单引号:
'DimensionNames'
(因为R2021a)
'RowNames'
'尺寸'
'variabletypes'
“VariableNames”
为避免与变量输入混淆,不要使用双引号字符串标量(例如“RowNames”
)。
有关接受或返回表的函数列表,请参见桌子。
行为在R2019b中改变
不修改带有前导或尾随空格字符的表和时间表变量名。
在以前的版本中,当使用“VariableNames”
的名称-值对参数,或将它们赋给VariableNames
财产。
要手动删除这些字符,请先使用strtrim.
函数,然后将它们作为变量名分配给表或时间表。
行为在R2019b中改变
如果分配一个与维度名匹配的表变量名,或者分配一个与变量名匹配的维度名,MATLAB会抛出一个错误。在以前的版本中,MATLAB提出了一个警告并修改了名称,使它们是唯一的。
R2021A中的行为发生了变化
如果分配符合这些保留名称之一的维度名称,MATLAB会引发错误:“属性”
,'RowNames'
,“VariableNames”
, 或者“:”
。在以前的版本中,MATLAB提出警告,并修改了尺寸名,使他们分别来自保留名称不同。
此功能支持高阵列,限制:金宝app
的语法TT =表(T1, T2,…)
用几个高数组构造一个高表(T1, T2,…)
。你可以使用“VariableNames”
参数名-值对指定变量名。
有关更多信息,请参阅对于超出的内存数据高大数组。
Sie Haben EineAbgeänderte版模具北美山脉。MöchtenSieDieses Beispiel Mit IhrenÄnderungenÖffnen?
您有一个连接到MATLAB-Befehl entspricht:
Führensieden befehl Durch Eingabe在Das Matlab-Befehlsfenster Aus。WebBrowserUnterstützenKeineMatlab-Befehle。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。