加载样本数据并创建表

从 patients MAT 文件加载样本数据数组。显示加载到工作区中的变量的名称和大小。

load patients

whos -file patients

Name Size Bytes Class Attributes

Age 100x1 800 double

Diastolic 100x1 800 double

Gender 100x1 11412 cell

Height 100x1 800 double

LastName 100x1 11616 cell

Location 100x1 14208 cell

SelfAssessedHealthStatus 100x1 11540 cell

Smoker 100x1 100 logical

Systolic 100x1 800 double

Weight 100x1 800 double

创建两个表。用通过患者问卷收集来的信息创建一个表 T,再用测量患者得来的数据创建另一个表 T2。每个表有 100 行。

T = table(Age,Gender,Smoker);

T2 = table(Height,Weight,Systolic,Diastolic);

显示每个表的前五行。

head(T,5)

ans=5×3 table

Age Gender Smoker

___ __________ ______

38 {'Male' } true

43 {'Male' } false

38 {'Female'} false

40 {'Female'} false

49 {'Female'} false

head(T2,5)

ans=5×4 table

Height Weight Systolic Diastolic

______ ______ ________ _________

71 176 124 93

69 163 109 77

64 131 125 83

67 133 117 75

64 119 122 80

串联添加来自另一个表的变量

通过将表 T 与 T2 水平串联来向前者添加变量。

T = [T T2];

显示 T 的前五行。

head(T,5)

ans=5×7 table

Age Gender Smoker Height Weight Systolic Diastolic

___ __________ ______ ______ ______ ________ _________

38 {'Male' } true 71 176 124 93

43 {'Male' } false 69 163 109 77

38 {'Female'} false 64 131 125 83

40 {'Female'} false 67 133 117 75

49 {'Female'} false 64 119 122 80

表 T 现在包含 7 个变量和 100 行。

如果您要以水平方式串联的表具有行名称,则 horzcat 将通过匹配行名称来串联表。因此,这些表必须使用相同的行名称,但列顺序无关紧要。

将变量从工作区添加到表中

将来自工作区变量 LastName 的患者姓名添加到 T 中的第一个表变量之前。您可以使用新位置附近的变量的名称在表中指定任何位置。使用引号来引用表变量的名称。但是,如果输入参数是工作区变量,则不要对其使用引号。

T = addvars(T,LastName,'Before','Age');

head(T,5)

ans=5×8 table

LastName Age Gender Smoker Height Weight Systolic Diastolic

____________ ___ __________ ______ ______ ______ ________ _________

{'Smith' } 38 {'Male' } true 71 176 124 93

{'Johnson' } 43 {'Male' } false 69 163 109 77

{'Williams'} 38 {'Female'} false 64 131 125 83

{'Jones' } 40 {'Female'} false 67 133 117 75

{'Brown' } 49 {'Female'} false 64 119 122 80

您还可以使用数字指定表中的位置。例如,使用数字指定位置时,上述命令的等效语法为 T = addvars(T,LastName,'Before',1)。

使用圆点语法添加变量

添加新的表变量的另一种方法是使用圆点语法。当您使用圆点语法时,新变量始终添加为最后一个表变量。无论变量是什么数据类型,只要行数与表相同,就可以添加到表。

通过水平串联两个变量 Systolic 和 Diastolic 来创建一个针对血压的新变量。将它添加到 T。

T.BloodPressure = [Systolic Diastolic];

head(T,5)

ans=5×9 table

LastName Age Gender Smoker Height Weight Systolic Diastolic BloodPressure

____________ ___ __________ ______ ______ ______ ________ _________ _____________

{'Smith' } 38 {'Male' } true 71 176 124 93 124 93

{'Johnson' } 43 {'Male' } false 69 163 109 77 109 77

{'Williams'} 38 {'Female'} false 64 131 125 83 125 83

{'Jones' } 40 {'Female'} false 67 133 117 75 117 75

{'Brown' } 49 {'Female'} false 64 119 122 80 122 80

T 现在包含 9 个变量和 100 行。一个表变量可以有多个列。因此,虽然 BloodPressure 有两列,但它是一个表变量。

将一个新变量 BMI 添加到表 T 中,该表包含每位患者的体重指数。BMI 是一个关于身高和体重的函数。当您计算 BMI 时,您可以引用 T 中的 Weight 和 Height 变量。

T.BMI = (T.Weight*0.453592)./(T.Height*0.0254).^2;

计算 BMI 时使用的运算符 ./ 和 .^ 分别表示逐元素除法和乘方。

显示表 T 的前五行。

head(T,5)

ans=5×10 table

LastName Age Gender Smoker Height Weight Systolic Diastolic BloodPressure BMI

____________ ___ __________ ______ ______ ______ ________ _________ _____________ ______

{'Smith' } 38 {'Male' } true 71 176 124 93 124 93 24.547

{'Johnson' } 43 {'Male' } false 69 163 109 77 109 77 24.071

{'Williams'} 38 {'Female'} false 64 131 125 83 125 83 22.486

{'Jones' } 40 {'Female'} false 67 133 117 75 117 75 20.831

{'Brown' } 49 {'Female'} false 64 119 122 80 122 80 20.426

在表中移动变量

使用 movevars 函数移动表变量 BMI,使其位于变量 Weight 之后。当按名称指定表变量时,请使用引号。

T = movevars(T,'BMI','After','Weight');

head(T,5)

ans=5×10 table

LastName Age Gender Smoker Height Weight BMI Systolic Diastolic BloodPressure

____________ ___ __________ ______ ______ ______ ______ ________ _________ _____________

{'Smith' } 38 {'Male' } true 71 176 24.547 124 93 124 93

{'Johnson' } 43 {'Male' } false 69 163 24.071 109 77 109 77

{'Williams'} 38 {'Female'} false 64 131 22.486 125 83 125 83

{'Jones' } 40 {'Female'} false 67 133 20.831 117 75 117 75

{'Brown' } 49 {'Female'} false 64 119 20.426 122 80 122 80

您还可以使用数字指定表中的位置。例如,使用数字指定位置时,上述命令的等效语法为 T = movevars(T,'BMI,'After',6)。按名称引用变量通常更方便。

使用索引移动表变量

除上述方法外,您还可以通过索引来移动表变量。您可以对表进行索引,使用的语法与对矩阵进行索引相同。

将 BloodPressure 移动到 BMI 之后。

T = T(:,[1:7 10 8 9]);

head(T,5)

ans=5×10 table

LastName Age Gender Smoker Height Weight BMI BloodPressure Systolic Diastolic

____________ ___ __________ ______ ______ ______ ______ _____________ ________ _________

{'Smith' } 38 {'Male' } true 71 176 24.547 124 93 124 93

{'Johnson' } 43 {'Male' } false 69 163 24.071 109 77 109 77

{'Williams'} 38 {'Female'} false 64 131 22.486 125 83 125 83

{'Jones' } 40 {'Female'} false 67 133 20.831 117 75 117 75

{'Brown' } 49 {'Female'} false 64 119 20.426 122 80 122 80

在包含多个变量的表中,使用 movevars 函数通常更方便。

删除变量

要删除表变量,请使用 removevars 函数。删除 Systolic 和 Diastolic 表变量。

T = removevars(T,{'Systolic','Diastolic'});

head(T,5)

ans=5×8 table

LastName Age Gender Smoker Height Weight BMI BloodPressure

____________ ___ __________ ______ ______ ______ ______ _____________

{'Smith' } 38 {'Male' } true 71 176 24.547 124 93

{'Johnson' } 43 {'Male' } false 69 163 24.071 109 77

{'Williams'} 38 {'Female'} false 64 131 22.486 125 83

{'Jones' } 40 {'Female'} false 67 133 20.831 117 75

{'Brown' } 49 {'Female'} false 64 119 20.426 122 80

使用圆点语法删除变量

您也可以使用圆点语法和空矩阵 [] 删除变量。从表中删除 Age 变量。

T.Age = [];

head(T,5)

ans=5×7 table

LastName Gender Smoker Height Weight BMI BloodPressure

____________ __________ ______ ______ ______ ______ _____________

{'Smith' } {'Male' } true 71 176 24.547 124 93

{'Johnson' } {'Male' } false 69 163 24.071 109 77

{'Williams'} {'Female'} false 64 131 22.486 125 83

{'Jones' } {'Female'} false 67 133 20.831 117 75

{'Brown' } {'Female'} false 64 119 20.426 122 80

使用索引删除变量

您还可以使用索引和空矩阵 [] 删除变量。从表中删除 Gender 变量。

T(:,'Gender') = [];

head(T,5)

ans=5×6 table

LastName Smoker Height Weight BMI BloodPressure

____________ ______ ______ ______ ______ _____________

{'Smith' } true 71 176 24.547 124 93

{'Johnson' } false 69 163 24.071 109 77

{'Williams'} false 64 131 22.486 125 83

{'Jones' } false 67 133 20.831 117 75

{'Brown' } false 64 119 20.426 122 80

拆分和合并表变量

要将多列表变量拆分为多个单列变量,请使用 splitvars 函数。将变量 BloodPressure 拆分为两个变量。

T = splitvars(T,'BloodPressure','NewVariableNames',{'Systolic','Diastolic'});

head(T,5)

ans=5×7 table

LastName Smoker Height Weight BMI Systolic Diastolic

____________ ______ ______ ______ ______ ________ _________

{'Smith' } true 71 176 24.547 124 93

{'Johnson' } false 69 163 24.071 109 77

{'Williams'} false 64 131 22.486 125 83

{'Jones' } false 67 133 20.831 117 75

{'Brown' } false 64 119 20.426 122 80

同样,您可以使用 mergevars 函数将多个相关的表变量组合在一个变量中。将 Systolic 和 Diastolic 重新组合为一个变量,并将其命名为 BP。

T = mergevars(T,{'Systolic','Diastolic'},'NewVariableName','BP');

head(T,5)

ans=5×6 table

LastName Smoker Height Weight BMI BP

____________ ______ ______ ______ ______ __________

{'Smith' } true 71 176 24.547 124 93

{'Johnson' } false 69 163 24.071 109 77

{'Williams'} false 64 131 22.486 125 83

{'Jones' } false 67 133 20.831 117 75

{'Brown' } false 64 119 20.426 122 80

调整行的方向使其变为变量

您可以使用 rows2vars 函数调整表或时间表中行的方向,使它们成为输出表中的变量。但是,如果该表具有多列变量,则必须先拆分它们,才能调用 rows2vars。

对 T 的行调整方向。指定 T 中患者的姓名是输出表中表变量的名称。T3 的第一个变量包含 T 的变量的名称。T3 的其余每个变量都包含来自 T 对应行的数据。

T = splitvars(T,'BP','NewVariableNames',{'Systolic','Diastolic'});

T3 = rows2vars(T,'VariableNamesSource','LastName');

T3(:,1:5)

ans=6×5 table

OriginalVariableNames Smith Johnson Williams Jones

_____________________ ______ _______ ________ ______

{'Smoker' } 1 0 0 0

{'Height' } 71 69 64 67

{'Weight' } 176 163 131 133

{'BMI' } 24.547 24.071 22.486 20.831

{'Systolic' } 124 109 125 117

{'Diastolic'} 93 77 83 75

您可以对 T3 使用圆点语法,以数组形式访问患者数据。但是,如果输入表的行值不能串联,则输出表的变量是元胞数组。

T3.Smith

ans = 6×1

1.0000

71.0000

176.0000

24.5467

124.0000

93.0000

matlab怎么排列一群变量,添加、删除和重新排列表变量相关推荐

  1. MATLAB 基础知识 数据类型 表 添加、删除和重新排列表变量

    本文说明如何在表中添加.删除和重新排列列向变量.您可以使用 addvars.movevars 和 removevars 函数添加.移动和删除表变量.作为备选方法,您还可以使用圆点语法或对表进行索引来修 ...

  2. linux怎么查看系统环境变量路径,Linux系统中的环境变量该如何设置与查看

    今天小编要跟大家分享的文章是关于Linux系统中的环境变量该如何设置与查看.大家都知道,在 Linux 系统中,有环境变量和 Shell 变量这两种变量. 环境变量是在程序及其子程序中全局可用的,常常 ...

  3. 织梦添加新变量和删除新变量的方法

    1.添加新变量 (1)织梦后台--系统--系统设置--系统基本参数--添加新变量,如下图: (2)打开"添加新变量"的输入框后,以添加站长QQ新变量为例,添加变量值如下图: 变量名 ...

  4. HADOOP实践101:在Hadoop集群中添加机器和删除机器

    无论是在Hadoop集群中添加机器和删除机器,都无需停机,整个服务不中断. 本次操作之前,Hadoop的集群情况如下: HDFS的机器情况如下: MR的机器情况如下: 添加机器 在集群的Master机 ...

  5. 织梦添加图片变量_织梦添加新变量和删除新变量的方法

    在用织梦建站时,有时候想调用自定义的某些信息,而织梦后台没有调用这些信息的地方,例如站长邮箱.站长QQ等,这时我们就可以用织梦后台添加新变量的方法调用自定义信息.本文主要讲解一下织梦添加新变量和删除新 ...

  6. 含抽水蓄能电站系统的调峰经济调度研究matlab程序(粒子群算法)

    含抽水蓄能电站系统的调峰经济调度研究matlab程序(粒子群算法) 参考文献:抽水蓄能电站的最佳调度方案研究 调峰电源的优化调度是促进电力系统安全稳定运行,实现可靠供电的要措施.因为目前我国的调峰电源 ...

  7. Oracle RAC 添加删除节点

    百度搜索,会很多文章关于如何添加删除节点的,而且这个操作也没有什么很多的技术含量,但是自己测试过,记录一下,以备后续查询,同时也希望能给需要的朋友一些帮助. 环境介绍 环境为两个节点RAC:racno ...

  8. SQL语句添加删除修改字段

    用SQL语句添加删除修改字段 1.增加字段      alter table docdsp    add dspcode char(200) 2.删除字段      ALTER TABLE table ...

  9. 用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等

    用SQL语句添加删除修改字段 1.增加字段 alter table docdsp add dspcode char(200) 2.删除字段 ALTER TABLE table_NAME DROP CO ...

最新文章

  1. 结合项目实例 回顾传统设计模式(九)迭代器模式
  2. android datepicker使用方法,android DatePicker
  3. 如果女朋友突然问你DNS是个啥...
  4. 让你python代码更快的3个小技巧
  5. CloudFoundry基础知识之理论篇
  6. Memcached学习---(2)Linux Memcached 安装
  7. js:基于原生js的上啦下啦刷新功能
  8. linux ssh端口是否打开,如何查看linux中的ssh端口开启状态
  9. 今天我的生日,纪念一下
  10. sfm点云代码_SfM实现过程分析
  11. 存活探针(Liveness Probe)
  12. C语言向有序数组中插入一个数使该数组仍保持有序
  13. 精通CSS与HTML设计模式 第一章(轻松搞定CSS)
  14. 《信息物理融合系统(CPS)设计、建模与仿真——基于 Ptolemy II 平台》——1.2 域和计算模型...
  15. C++之 fgets函数
  16. 关于单片机PDR和POR应用注意事项
  17. android 查找联系人方法(支持首拼,全拼,英文)
  18. 学python第一弹 用IDLE启动python
  19. 【新智元人工智能创业家】陈天石:寒武纪,全球首款深度学习专用处理器
  20. 【机器学习】基础篇--线代基础

热门文章

  1. 安装黑客帝国字母雨屏保教程(让你的屏保更加炫酷)
  2. CCS6软件及仿真器驱动安装
  3. LeNet5模型讲解
  4. Xilinx VIVADO 中 DDR3(AXI4)的使用(1)创建 IP 核
  5. 剑指 Offer 13: 机器人的运动范围
  6. 【机器学习算法】聚类分析-2 聚类算法的分类,层次聚类算法的选择
  7. Dancing Links DLX
  8. #考试酷#D1_Pointers and Addresses
  9. Vue项目中如何使用Echarts 及Echarts中echarts-liquidfill水晶球插件
  10. 5.28 综合案例2.0-简易起夜灯