主要内容

struct2dataset

(不推荐)将结构数组转换为数据集数组

数据集不推荐使用数据类型。要处理异构数据,请使用MATLAB®表格数据类型。看到MATLAB表格文档以获取更多信息。

描述

例子

ds= struct2dataset (年代将结构数组转换为数据集数组。

例子

ds= struct2dataset (年代名称,值使用一个或多个指定的附加选项执行转换名称,值对参数。

例子

全部折叠

使用默认选项将标量结构数组转换为数据集数组。

创建要转换的结构数组。

S.Name = {“克拉克”“棕色”“马丁”};S.Gender = {“米”“F”“米”};S.SystolicBP = (124; 122; 130);S.DiastolicBP = (93; 80; 92);年代
S =结构体字段:名称:{3x1 cell}性别:{3x1 cell} SystolicBP: [3x1 double] DiastolicBP: [3x1 double]

标量结构数组有四个字段,每个字段有三行。

将结构数组转换为数据集数组。

ds = struct2dataset (S)
ds = Name Gender SystolicBP DiastolicBP {'CLARK'} {'M'} 124 93 {'BROWN'} {'F'} 122 80 {'MARTIN'} {'M'} 130 92

中的结构字段名称年代成为输出数据集数组中的变量名。的大小ds3×4。

将非标量结构数组转换为数据集数组,使用用于观察名称的结构字段之一。

创建要转换的非标量结构数组。

(1, 1)。Name =“克拉克”;(1, 1)。性别=“米”;(1, 1)。年代ystolicBP = 124; S(1,1).DiastolicBP = 93; S(2,1).Name =“棕色”;(2, 1)。性别=“F”;(2, 1)。年代ystolicBP = 122; S(2,1).DiastolicBP = 80; S(3,1).Name =“马丁”;年代(3,1)。性别=“米”;年代(3,1)。年代ystolicBP = 130; S(3,1).DiastolicBP = 92; S
S =3×1带有字段的结构数组:姓名性别收缩压舒张压

这是一个带有4个字段的3乘1结构数组。

属性将结构数组转换为数据集数组的名字观察名称的字段。

ds = struct2dataset(年代,“ReadObsNames”“名字”
ds = Gender SystolicBP DiastolicBP CLARK {'M'} 124 93 BROWN {'F'} 122 80 MARTIN {'M'} 130 92

的大小ds3乘3是因为结构场吗的名字用于观察名称,而不是作为数据集数组变量。

ds.Properties.DimNames
ans =1 x2单元格{'名字'}{}“变量”
ds.Properties.ObsNames
ans =3 x1细胞{' clark '} {' brown '} {' martin '}

输入参数

全部折叠

要转换为数据集数组的输入结构数组,指定为标量结构数组N字段,每个都有行,或非标量-by-1结构数组N字段。

数据类型:结构体

名称-值参数

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“ReadObsNames”、“myField”指定结构字段,myField,包含观察名称。

包含输出数据集数组的观察名称的结构字段的名称,指定为逗号分隔对,由“ReadObsNames”以及包含输入结构数组中的字段名的字符向量或字符串标量,年代.当您指定字段名时,struct2dataset使用该字段创建观察名称和集合ds.Properties.DimNames等于{ReadObsNames,“变量”}

例如,要指定观察名称在结构字段中,的名字,使用

例子:“ReadObsNames”、“名称”

默认情况下,如果ReadObsNames等于struct2dataset不创建观察名称,除非使用名称-值对参数指定名称ObsNames

输出数据集数组的观察名称,指定为逗号分隔对,由“ObsNames”以及包含观察名称的字符向量的字符串数组或单元格数组。名称不需要是有效的MATLAB标识符,但它们必须是唯一的。

指示符,指示如何处理标量输入结构数组,该数组指定为逗号分隔对,由“AsScalar”,要么真正的.默认值为真正的如果年代是标量结构数组吗否则。

默认情况下,struct2dataset将标量结构数组转换为N字段,每个都有行,到一个——- - - - - -N数据集的数组。

如果你设置AsScalar等于对于标量输入结构数组,则struct2dataset转换年代的数据集数组N观察。

输出参数

全部折叠

输出数据集数组,默认返回观察和N变量。

  • 如果年代标量结构数组与N字段,每个都有行,然后ds是一个——- - - - - -N数据集的数组。

  • 如果年代是一个nonscalar-by-1结构数组N字段,然后ds是一个——- - - - - -N数据集的数组。

  • 如果年代标量结构数组与N字段,每个都有行,AsScalar设为,然后ds是一个数据集数组N观察。

介绍了R2012b