MATLAB 基础知识 数据类型 分组数组 对分类数据绘图

2023-11-12

本文演示了如何对分类数组中的数据绘图。

加载样本数据

加载从 100 位患者收集的样本数据。

load patients

whos
  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      

基于字符向量元胞数组创建分类数组

工作区变量 Location 是一个字符向量元胞数组,它包含患者就医的三个唯一医疗机构。

为了更方便地访问和比较数据,请将 Location 转换为一个分类数组。

Location = categorical(Location);

汇总分类数组。

summary(Location)
     County General Hospital        39 
     St. Mary's Medical Center      24 
     VA Hospital                    37 

39 位患者在 County General Hospital 就医,24 位患者在 St. Mary’s Medical Center 就医,37 位患者在 VA Hospital 就医。

工作区变量 SelfAssessedHealthStatus 包含四个唯一值 Excellent、Fair、Good 和 Poor。

将 SelfAssessedHealthStatus 转换为一个有序分类数组,这样这些类别采用数学排序 Poor < Fair < Good < Excellent。

SelfAssessedHealthStatus = categorical(SelfAssessedHealthStatus,...
    {'Poor' 'Fair' 'Good' 'Excellent'},'Ordinal',true);

汇总分类数组 SelfAssessedHealthStatus。

summary(SelfAssessedHealthStatus)
     Poor           11 
     Fair           15 
     Good           40 
     Excellent      34 

绘制直方图

直接基于分类数组创建一个直方条形图。

figure
histogram(SelfAssessedHealthStatus)
title('Self Assessed Health Status From 100 Patients')

在这里插入图片描述

函数 histogram 接受分类数组 SelfAssessedHealthStatus,并对四个类别中的每一个类别绘制类别计数。

仅为健康状况评估为 Fair 或 Poor 的患者绘制医院位置直方图。

figure
histogram(Location(SelfAssessedHealthStatus<='Fair'))
title('Location of Patients in Fair or Poor Health')

在这里插入图片描述

创建饼图

从分类数组直接创建饼图。

figure
pie(SelfAssessedHealthStatus);
title('Self Assessed Health Status From 100 Patients')

在这里插入图片描述

函数 pie 接受分类数组 SelfAssessedHealthStatus,并绘制了一个包含四个类别的饼图。

创建帕累托图

根据 SelfAssessedHealthStatus 的四个类别各自的类别计数创建帕累托图。

figure
A = countcats(SelfAssessedHealthStatus);
C = categories(SelfAssessedHealthStatus);
pareto(A,C);
title('Self Assessed Health Status From 100 Patients')

在这里插入图片描述

pareto 的第一个输入参数必须是向量。如果分类数组为矩阵或多维数组,则在调用 countcats 和 pareto 之前将其重构为向量。

创建散点图

将字符向量元胞数组转换为分类数组。

Gender = categorical(Gender);
汇总分类数组 Gender。

summary(Gender)
     Female      53 
     Male        47 

Gender 是一个 100×1 的分类数组,包含两个类别 Female 和 Male。

使用分类数组 Gender 分别访问每种性别的 Weight 和 Height。

X1 = Weight(Gender=='Female');
Y1 = Height(Gender=='Female');

X2 = Weight(Gender=='Male');
Y2 = Height(Gender=='Male');

X1 和 Y1 是 53×1 的数值数组,包含女性患者的数据。

X2 和 Y2 是 47×1 的数值数组,包含男性患者的数据。

创建一个身高与体重的散点图。使用一个圈指示女性患者的数据,使用一个叉指示男性患者的数据。

figure
h1 = scatter(X1,Y1,'o');
hold on
h2 = scatter(X2,Y2,'x');

title('Height vs. Weight')
xlabel('Weight (lbs)')
ylabel('Height (in)')

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MATLAB 基础知识 数据类型 分组数组 对分类数据绘图 的相关文章

  • 在matlab中,如何读取python pickle文件?

    在 python 中 我生成了一个 p 数据文件 pickle dump allData open myallData p wb 现在我想在Matlab中读取myallData p 我的Matlab安装在Windows 8下 其中没有Pyt
  • Matlab:3D 堆积条形图

    我正在尝试创建一个 3D 堆积条形图 如这个问题所示 Matlab 中的 3D 堆叠条形图 https stackoverflow com questions 13156133 3d stacked bars in matlab 5D 然而
  • 将 Matlab 数组移植到 C/C++

    我正在将 matlab 程序移植到 C C 我有几个问题 但最重要的问题之一是 Matlab 将任何维度的数组都视为相同 假设我们有一个这样的函数 function result f A B C result A 2 B C A B and
  • FMINCON 的替代方案

    除了 fmincon 之外还有其他更快 更高效的求解器吗 我正在使用 fmincon 来解决特定问题 但对于中等大小的向量变量来说 我的内存不足 我也没有任何超级计算机或云计算选项可供使用 我知道任何替代解决方案仍然会耗尽内存 但我只是想看
  • 在 MATLAB 中绘图后恢复轴

    从文本文件绘制多种方法的输出后 未显示轴的右侧和上侧 我需要拥有它们并将它们加粗 就像当前的轴一样 绘制的数据来自存储每种方法数据的文件 每个数据文件都是一个 256x2 文件 包含 0 1 之间的值 第一列是精度 第二列是召回率 figu
  • 如何选择面积最大的对象?

    我用过bwconvhull检测图像的某个部分 正如您在图像中看到的那样 有许多具有特定质心的对象 我想做的是检测面积最大的物体 左起第一个大物体 并忽略其他物体 我应该遵循哪种方法 我将非常感谢您的帮助 以下是代码 由于我仍在努力 所以写得
  • 在 Matlab 中保存 Kinect 深度图像?

    通过使用 Kinect 我可以获得深度图像 其中每个深度图像像素存储相机和物体之间的距离 以毫米为单位 现在我想保存它们以便以后使用 最好的推荐是什么 我正在考虑将深度图像保存为图像 jpg png等 然而 该值通常是从50毫米到10000
  • Deploytool for MATLAB R2013b 不起作用,发生了什么变化?

    多年来我一直在使用集成deploytool为我的同事创建易于分发的 exe 文件 我几天前安装了R2013b 但无法使用deploytool不再了 尝试打包时的日志文件给出了以下内容 ant
  • 保存符号方程以供以后使用?

    From here http www mathworks com help releases R2011a toolbox symbolic brvfu8o 1 html brvfxem 1 我正在尝试求解这样的符号方程组 syms x y
  • 帮助我理解FFT函数(Matlab)

    1 除了负频率之外 FFT 函数提供的最小频率是多少 是零吗 2 如果它为零 我们如何在对数刻度上绘制零 3 结果总是对称的 或者只是看起来是对称的 4 如果我使用abs fft y 来比较2个信号 我是否会失去一些准确性 1 除了负频率之
  • 如何从 matlab 调用 Qtproject?

    我在 matlab 中有一个函数可以写入一个 file txt 我在 qt 项目中使用它 So 当我使用 unix 获取要运行的 qt 编译可执行文件时 我有一个 Matlab 文件 但出现错误 代码 unix home matt Desk
  • Mathworks 生成 Matlab HTML 文档的方法是什么?

    我正在开发共享的 Matlab 代码 我们希望在本地网络中将生成的文档作为可搜索的 HTML 文档共享 我知道以下生成文档的方法 编写一个类似于 C 文件的转换器 这是在中完成的将 Doxygen 与 Matlab 结合使用 http ww
  • 在矩阵中找到叉的最快方法

    定义 A i j 1 是十字的中点 如果元素A i 1 j 1A i 1 j 1A i j 1 1A i j 1 1 这些元素和中点一起形成矩阵 A 中的十字 其中 A 至少是一个 3 3 矩阵 并且i j 0 假设上图是 8 8 矩阵 A
  • MATLAB 中的逻辑数组与数值数组

    我正在比较两个二进制数组 我有一个数组 其中值可以是一或零 如果值相同则为 1 如果不同则为零 请注意 我正在做检查之外的其他事情 因此我们不需要进入矢量化或代码的性质 在 MATLAB 中使用数值数组和逻辑数组哪个更有效 Logical
  • MATLAB:图像角坐标和引用元胞数组

    我在比较不同元胞数组中的元素时遇到一些问题 这个问题的背景是我正在使用bwboundariesMATLAB 中的函数可追踪图像的轮廓 该图像是结构横截面 我试图找出整个部分是否具有连续性 即 只有一个轮廓由bwboundaries命令 完成
  • 二维随机微分方程 (SDE)

    我第一次研究随机微分方程 我正在寻求模拟和求解二维随机微分方程 模型如下 dp F t p dt G t p dW t where p 是一个 2 1 向量 p theta t phi t F是列向量 F sin theta Psi cos
  • 在 MATLAB 中验证输入的最佳实践

    在验证 MATLAB 函数中的输入时 什么时候使用 inputParser 比使用断言更好 或者还有其他更好的工具可用吗 我个人发现使用 inputParser 不必要地复杂 对于 Matlab 始终需要检查 3 项内容 存在 类型和范围
  • MATLAB;具有 2+ 个/分割图例的饼图 R2017b

    我正在创建一个饼图 理想情况下希望图例水平显示在顶部和 或底部 然而 在几乎所有情况下 这是不可能的 因为图例超出了数字 因此 我理想情况下希望将图例分成两个 或更多 子图例并单独放置它们 我知道这不是 MATLAB 中的内置功能 我使用的
  • Python 中 Matlab 'fscanf' 的等价物是什么?

    Matlab函数fscanf 似乎很强大 python 或numpy 中是否有相同的等效项 具体来说 我想从文件中读取矩阵 但我不想迭代每一行来读取矩阵 类似的东西 来自 matlab 用于读取 2D 1000x1000 矩阵 matrix
  • 如何从列中创建对称矩阵?

    例如 我想转动以下列 90 175 600 650 655 660 代入矩阵 90 175 600 650 655 660 175 600 650 655 660 655 600 650 655 660 655 650 650 655 66

随机推荐

  • 计算机组成原理慕课测试-第四单元

    计算机字长32位 主存容量为128MB 按字编址 其寻址范围为 0 32M 1 1 B 8b 1 kB 1024 B kB kilobajt 千 1 MB 1024 kB MB megabajt 兆 1 MB 1024 kB MB mega
  • IPV6 阿里DDNS

    IPV6 阿里DDNS 因为需要在家搭建一套环境 并且需要公网能访问 国内的ipv4的地址 各大运营商基本都不会分配ipv4地址 电信宽带好像有地方可以 但是听说很贵 而且是动态的 每过段时间就会改变 发现移动宽带的公网ipv6地址是可以获
  • 微信为什么更受欢迎?

    想必大家都和我一样 曾是一个QQ的忠实用户 认为QQ是最受欢迎的社交软件 其实不然 微信比QQ更受欢迎 只是我们根本不知道微信 所以 我们来谈谈微信NB在那里吧 1 QQ的用户是年轻化 娱乐性强 而微信让不是qq用户的人也加入进来 变得更加
  • CentOS通过nvm安装管理node

    今天搭建CentOS node 环境 原本打算源码安装 环境编译一直出错 为节省时间 直接用nvm 来下载和管理node nvm 是一个开源软件 大家可以在github 上面 下载它的源码https github com creationi
  • 【AI with ML】第 14 章 :在 iOS 应用程序中使用 TensorFlow Lite

    大家好 我是Sonhhxg 柒 希望你看完之后 能对你有所帮助 不足请指正 共同学习交流 个人主页 Sonhhxg 柒的博客 CSDN博客 欢迎各位 点赞 收藏 留言 系列专栏 机器学习 ML 自然语言处理 NLP 深度学习 DL fore
  • Applications(4)

    CONTENTS Other Applications In this section we cover a few other types of applications of deep learning that are differe
  • java使用smb操作win共享文件夹

    package com zky util import jcifs smb SmbException import jcifs smb SmbFile import jcifs smb SmbFileInputStream import j
  • 新手LearnOpenGL纹理不显示的部分解决方法

    项目场景 在LearnOpenGL学习中遇到的一些问题 照着写但是纹理加载不出来或者两张纹理只加载一张 问题描述 lt 纹理加载不出来 gt 1 文件路径是否正确 是否输出texture load fail等提示 设置了成功检查才会有提示
  • RK3568 Camera 使用

    RK3568 Camera 使用 RK3568 Sensor驱动开发移植 1 RK3568 Sensor驱动开发移植 2 RK3568 Sensor驱动开发移植 3 MIPI CSI用法 RK3568平台仅有一个标准物理mipi csi2
  • 修改pip下载源

    pip国内的一些镜像 阿里云 中国科学技术大学 豆瓣 清华大学 中国科学技术大学 修改源方法一 linux 修改 pip pip conf 如无就创建一个新的 修改内容为 global index url https pypi tuna t
  • 三、C语言进阶:二维指针

    3 二维指针 3 1 什么是二维指针 二维指针与一维指针一样都是保存变量的地址 实例 一维指针存放变量地址 二维指针存放一维指针地址 include
  • Java 多线程启动为什么调用 start() 方法而不是 run() 方法?

    多线程在工作中多多少少会用到 我们知道启动多线程调用的是 start 方法 而不是 run 方法 你知道原因吗 在探讨这个问题之前 我们先来了解一些多线程的基础知识 线程的状态 Java 中 定义了 6 种线程状态 在 Thread 类可以
  • 德标螺纹规格对照表_螺栓螺母德标 欧标 国标对照表

    新德标 旧德标 英文名 中文名 国标 DINENISO4014 DIN931 1 Hexagonheadbolts ProductgradesAandB I SO4014 1999 六角头螺栓 GB T5782 2000 DINENISO4
  • muduo网络库定时器的实现

    一 函数介绍 常见的与时间相关的函数有 sleep alarm usleep nanosleep clock nanosleep gettimer settitimer timer create timer settime timer ge
  • Golang(2)——入门语法之基本语法(函数、变量、类型(自动推导、强转)、流程控制 for、 if else、 switch、defer)

    基本语法 包 函数 var变量 const常量 类型 流程控制 更多类型 包管理 go中没有public private protected等访问控制修饰符 它是通过字母大小表示能否被其他方访问或者调用的 大写的方法就表示是可以被调用的 相
  • C ~ 指针

    指针可以简化一些 C 编程任务的执行 且一些任务 如动态内存分配 没有指针无法执行 所以 学习指针是很有必要的 每个变量都有一个内存位置 每一个内存位置都定义了可使用连字号 运算符访问的地址 它表示了在内存中的一个地址 请看下面的实例 它将
  • 应聘Java笔试时可能出现问题及其答案

    Java基础方面 1 作用域public private protected 以及不写时的区别 答 区别如下 作用域 当前类 同一package 子孙类 其他package public protected friendly private
  • Java 小例子:图书馆课程设计(Java 8 版)

    用 Java 模拟一个图书馆 包括创建图书 创建读者 借书 还书 列出所有图书 列出所有读者 列出已借出的图书 列出过期未还的图书等功能 每个读者最多只能借 3 本书 每个书最多只能借 3 个星期 超过就算过期 这个例子跟 http blo
  • 16 bit float 存储_C++:float型数据存储原理及精度丢失溢出深入解析

    电子计算机只能存储0和1 人类世界所能认识的任何数据都需要通过转换为二进制再进行存储 整数 int 型转换为二进制存储很好理解 那么float型数据计算机又是怎么存储的呢 常说的浮点型数据精度丢失和数据溢出又是怎么回事呢 浮点数示意图 位和
  • MATLAB 基础知识 数据类型 分组数组 对分类数据绘图

    本文演示了如何对分类数组中的数据绘图 加载样本数据 加载从 100 位患者收集的样本数据 load patients whos Name Size Bytes Class Attributes Age 100x1 800 double Di