Matlab之数组、包含分配给类别的值函数categorical

2023-10-12 03:04

本文主要是介绍Matlab之数组、包含分配给类别的值函数categorical,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、功能

categorical 是为一组有限的离散类别(例如 High、Med 和 Low)赋值的数据类型。这些类别可以采用您指定的数学排序,例如 High > Med > Low,但这并非必须。分类数组可用来有效地存储并方便地处理非数值数据,同时还为数值赋予有意义的名称。分类数组的常见用法是用来指定构成表的各组行。

二、语法

语法1

B = categorical(A) 根据数组 A 创建分类数组。B 的类别是 A 的唯一值且经过排序。

语法2

B = categorical(A,valueset) 为 valueset 中的每个值创建一个类别。B 的类别与 valueset 的值具有相同的顺序。

您可以使用 valueset 来包含 A 中不存在的值的类别。反之,如果 A 包含 valueset 中不存在的任何值,则 B 的对应元素为未定义。

语法3

B = categorical(A,valueset,catnames) 通过将 valueset 中的类别值与 catnames 中的名称匹配来命名 B 中的类别。

语法4

B = categorical(A,___,Name,Value) 创建分类数组,其中通过一个或多个 Name,Value 对组参数指定其他选项。您可以包括上述语法中的任何输入参数。

例如,要指示类别采用数学排序,请指定 'Ordinal',true。

三、输入参数

A — 输入数组

数值数组 | 逻辑数组 | 分类数组 | 日期时间数组 | 持续时间数组 | 字符串数组 | 字符向量元胞数组

输入数组,指定为数值数组、逻辑数组、分类数组、日期时间数组、持续时间数组、字符串数组或字符向量元胞数组。

categorical 会删除作为字符串或字符向量的输入值中的前导和尾部空格。

如果 A 包含缺失值,则 B 的相应元素未定义,并显示为 <undefined>。categorical 函数可将下列值转换为未定义的类别值:

数值数组和持续时间数组中的 NaN

字符串数组中的缺失字符串 (<missing>) 或空字符串 ("")

字符向量元胞数组中的空字符向量 ('')

日期时间数组中的 NaT

分类数组中未定义的值 (<undefined>)

对于未定义的值,B 没有对应的类别。要为缺失值或未定义的值创建显式类别,必须在 catnames 中给出所需的类别名称,并在 valueset 中给出缺失值作为对应的值。

A 还可以是具有以下类方法的对象数组:

unique

eq

valueset — 类别

unique(A) (默认) | 由唯一值组成的向量

类别,指定为由唯一值组成的向量。valueset 的数据类型和 A 的数据类型必须相同,A 为字符串数组时除外。在这种情况下,valueset 可以是字符串数组或字符向量元胞数组。

categorical 会删除作为字符串或字符向量的 valueset 元素中的前导和尾部空格。

catnames — 类别名称

字符向量元胞数组 | 字符串数组

类别名称,指定为字符向量元胞数组或字符串数组。如果不指定 catnames 输入参数,categorical 将使用 valueset 中的值作为类别名称。

要将 A 中多个不同的值合并为 B 中的单个类别,请包括与这些值对应的、完全一样的名称。

四、示例

首先,创建包含温度读数、日期和台站标签的阵列。

Temps = [58; 72; 56; 90; 76];
Dates = {'2017-04-17';'2017-04-18';'2017-04-30';'2017-05-01';'2017-04-27'};
Stations = {'S1';'S2';'S1';'S3';'S2'};

将桩号转换为类别数组。

Stations = categorical(Stations)

显示类别。三个桩号标签是类别。

categories(Stations)

创建包含温度、日期和桩号标签的表。

T = table(Temps,Dates,Stations)

显示从站S2获取的读数。可以使用==运算符查找等于S2的桩号值。然后使用逻辑索引选择包含来自站点S2的数据的表行。

TF = (T.Stations == 'S2');
T(TF,:)

输出的结果:

这篇关于Matlab之数组、包含分配给类别的值函数categorical的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/192793

相关文章

Java8需要知道的4个函数式接口简单教程

《Java8需要知道的4个函数式接口简单教程》:本文主要介绍Java8中引入的函数式接口,包括Consumer、Supplier、Predicate和Function,以及它们的用法和特点,文中... 目录什么是函数是接口?Consumer接口定义核心特点注意事项常见用法1.基本用法2.结合andThen链

MySQL 日期时间格式化函数 DATE_FORMAT() 的使用示例详解

《MySQL日期时间格式化函数DATE_FORMAT()的使用示例详解》`DATE_FORMAT()`是MySQL中用于格式化日期时间的函数,本文详细介绍了其语法、格式化字符串的含义以及常见日期... 目录一、DATE_FORMAT()语法二、格式化字符串详解三、常见日期时间格式组合四、业务场景五、总结一、

nginx upstream六种方式分配小结

《nginxupstream六种方式分配小结》本文主要介绍了nginxupstream六种方式分配小结,包括轮询、加权轮询、IP哈希、公平轮询、URL哈希和备份服务器,具有一定的参考价格,感兴趣的可... 目录1 轮询(默认)2 weight3 ip_hash4 fair(第三方)5 url_hash(第三

golang panic 函数用法示例详解

《golangpanic函数用法示例详解》在Go语言中,panic用于触发不可恢复的错误,终止函数执行并逐层向上触发defer,最终若未被recover捕获,程序会崩溃,recover用于在def... 目录1. panic 的作用2. 基本用法3. recover 的使用规则4. 错误处理建议5. 常见错

C++一个数组赋值给另一个数组方式

《C++一个数组赋值给另一个数组方式》文章介绍了三种在C++中将一个数组赋值给另一个数组的方法:使用循环逐个元素赋值、使用标准库函数std::copy或std::memcpy以及使用标准库容器,每种方... 目录C++一个数组赋值给另一个数组循环遍历赋值使用标准库中的函数 std::copy 或 std::

C++初始化数组的几种常见方法(简单易懂)

《C++初始化数组的几种常见方法(简单易懂)》本文介绍了C++中数组的初始化方法,包括一维数组和二维数组的初始化,以及用new动态初始化数组,在C++11及以上版本中,还提供了使用std::array... 目录1、初始化一维数组1.1、使用列表初始化(推荐方式)1.2、初始化部分列表1.3、使用std::

C++ Primer 多维数组的使用

《C++Primer多维数组的使用》本文主要介绍了多维数组在C++语言中的定义、初始化、下标引用以及使用范围for语句处理多维数组的方法,具有一定的参考价值,感兴趣的可以了解一下... 目录多维数组多维数组的初始化多维数组的下标引用使用范围for语句处理多维数组指针和多维数组多维数组严格来说,C++语言没

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

MySQL数据库函数之JSON_EXTRACT示例代码

《MySQL数据库函数之JSON_EXTRACT示例代码》:本文主要介绍MySQL数据库函数之JSON_EXTRACT的相关资料,JSON_EXTRACT()函数用于从JSON文档中提取值,支持对... 目录前言基本语法路径表达式示例示例 1: 提取简单值示例 2: 提取嵌套值示例 3: 提取数组中的值注意