Matlab自学笔记四十九:类型识别:判断数据的类型和类别

发布于:2025-03-31 ⋅ 阅读:(24) ⋅ 点赞:(0)

1.简单总结数据类型

Matlab的基本类型(16个)

2.认识函数

对于给定的变量数据,如何判断它的数据类型呢,例如例如数值型(整数、浮点数、实数、无穷数、有限数、nan等)、字符(串)型、结构数组、元胞数组、表、函数句柄等。

Matlab中判断数据类型,常用的函数包括:变量信息whos,类型class,无穷大isinf,非值isnan,数值型isnumeric,实数isreal,有限值isfinite,综合判断isa,字符向量元胞数组iscellstr。

3.判断缺失值和无穷大

程序示例如下:

x=1

whos x

class(x) %判断x的类型

isnan(x) %判断是否非值(缺失值)

isnan(nan)

isinf(x) %判断是否无穷大

isinf(1e309)

运行结果:

x =

     1

  Name      Size            Bytes  Class     Attributes

  x         1x1                 8  double             

ans =

    'double'

ans =

  logical

   0

ans =

  logical

   1

ans =

  logical

   0

ans =

  logical

   1

4.判断数值型数据、实数、有限值

程序示例如下:

isnumeric(x)

isnumeric('a')

isreal(x)

isreal(1+2i)

isfinite(x)

isfinite(1e309)

运行结果:

ans =

  logical

   1

ans =

  logical

   0

ans =

  logical

   1

ans =

  logical

   0

ans =

  logical

   1

ans =

  logical

   0

5.判断各种类型isa

这是判断数值型、整型、浮点数、逻辑型、字符型、字符串型、结构数组、表、元胞数组、函数句柄、时间日期型数据类型的万能方法,使用isa和特定的字符标识,程序示例如下:

isa(x,'numeric')  %判断数值型

isa(x,'integer')  %判断整数

isa(int16(1),'integer')  %判断int16(1)是否为整数

isa(x,'int8')  %判断x是否为8位整型

isa(int8(1),'int8')

运行结果:

ans =

  logical

   1

ans =

  logical

   0

ans =

  logical

   1

ans =

  logical

   0

ans =

  logical

   1

isa(x,'float')  %判断浮点型

isa(x,'double')  %判断双精度浮点型

isa(x,'single')  %判断单精度浮点型

isa(x,'logical')  %判断逻辑型

isa(true,'logical')

运行结果:

ans =

  logical

   1

ans =

  logical

   1

ans =

  logical

   0

ans =

  logical

   0

ans =

  logical

   1

isa(x,'char')  %判断字符型

isa('a','char')

isa(x,'string')  %判断字符串型

isa('a','string')

isa("b",'string')

运行结果:

ans =

  logical

   0

ans =

  logical

   1

ans =

  logical

   0

ans =

  logical

   0

ans =

  logical

   1

isa(x,'struct')  %判断结构数组

isa(x,'table')  %判断表数组

isa(x,'cell')  %判断元胞数组

isa(x,'function_handle')  %判断函数句柄

isa(x,'datetime')  %判断日期时间型

运行结果:

ans =

  logical

   0

ans =

  logical

   0

ans =

  logical

   0

ans =

  logical

   0

ans =

  logical

   0

6.判断日期时间型、字符元胞数组

程序示例如下:

isdatetime(x)

iscellstr({'11'})  %判断元胞数组是否由字符构成(是)

iscellstr({11})  %同上(不是,是双精度数值)

运行结果:

ans =

  logical

   0

ans =

  logical

   1

ans =

  logical

   0

相关内容推荐

66.60 这种中心有亮点的灰度图怎么画?

38.4 从图片上自动提取圆心坐标和半径数据

26.5 SVM支持向量机,核函数Kernel和核变换,Matlab编程实例

37.8 Matlab Appdesigner界面编程实例:闹铃/定时器,timer定时原理和程序应用

22.9 混合整数线性规划intlinprog变量取值约束是整数

66.58 更改三维图坐标标签的字体、字号和旋转角度

75.8 如何用Matlab画城堡、海豚和小猪佩奇

47.1/Matlab遗传算法/概念/原理/编程演示数学建模

43.4 BP(反向传播)神经网络/看完这个可以放弃B站了/Matlab编程实例

45.13 Matlab精讲:卷积神经网络(工作原理和运行机制)

14.6 Matlab微分方程数值解法 经典ode45 龙格库塔 数学建模

End