此示例演示如何使用数据集数组变量及其数据。
通过使用变量(列)名称和点索引,可以访问变量数据或选择变量子集。加载示例数据集数组。显示中变量的名称医院
.
负载医院hospital.Properties.VarNames(:)
ans=7x1电池{'LastName'}{'Sex'}{'Age'}{'Weight'}{'Smoker'}{'BloodPressure'}{'Trials'}
数据集数组有7个变量(列)和100个观察值(行)。你可以双击医院
在工作区窗口中查看变量编辑器中的数据集数组。
绘制变量中数据的直方图重量
.
图直方图(医院、体重)
直方图显示权重分布为双峰分布。
画一个方框图重量
按中的值分组性别
(男性和女性)。也就是说,使用变量性别
作为分组变量。
图:箱线图(医院、体重、医院、性别)
箱形图表明,性别决定了体重的双峰型。
创建一个只有变量的新数据集数组姓氏
,性别
,重量
.您可以通过名称或列号访问变量。
ds1 =医院(:,{“姓氏”,“性”,“重量”}); ds2=医院(:,[1,2,4]);
数据集数组ds1的
和ds2
它们是等价的。使用括号( )
为数据集数组编制索引以保留数据类型时;即,从数据集数组的子集创建数据集数组。还可以使用变量编辑器从变量和观测的子集创建新的数据集数组。
转换变量的数据类型吸烟者
从逻辑到标称的标签没有
和对
.
医院.吸烟者=名义(医院.吸烟者{“不”,“是的”}); 班级(医院、吸烟者)
ans =“名义”
显示项目的前10个元素吸烟者
.
医院.吸烟者(1:10)
ans=10 x1名义是的,不,不,不,不,不,不
如果要更改标称阵列中的标高标签,请使用设置标签
.
变量血压
是一个100×2的阵列。第一列对应收缩压,第二列对应舒张压。将此数组拆分为两个新变量,系统压力
和底压力
.
hospital.SysPressure=hospital.BloodPressure(:,1);hospital.dipressure=hospital.BloodPressure(:,2);hospital.Properties.VarNames(:)
ans=9x1电池“性”{的LastName}{}{‘年龄’}{“重量”}{“烟民”}{“血压”}{“试验”}{‘SysPressure} {' DiaPressure '}
数据集数组,医院
,有两个新变量。
使用正则表达式
在中查找变量医院
具有“压力”
以他们的名义。创建仅包含这些变量的新数据集数组。
bp=regexp(hospital.Properties.VarNames,“压力”); bpIdx=cellfun(@isempty,bp);bpData=医院(:,~bpIdx);bpData.Properties.VarNames(:)
ans=3x1电池{'BloodPressure'} {' sypressure '} {' dipressure '}
新的数据集数组,bpData
,只包含血压变量。
删除变量血压
从数据集数组中,医院
.
医院。血压= [];hospital.Properties.VarNames(:)
ans=8 x1细胞{'LastName'}{'Sex'}{'Age'}{'Weight'}{'Smoker'}{'Trials'}{'SysPressure'}{'dipressure'}
变量血压
不再在数据集数组中。