如何使用 MATLAB 从矩阵中移除 NaN 值
在 MATLAB 中,要移除矩阵中的 NaN 值,以下两个函数被广泛使用。
remmissing ()
isnan ()
现在让我们通过示例程序来了解如何使用这两个函数在 MATLAB 中移除矩阵中的 NaN 值。
使用 isnan () 函数移除 NaN 值
在 MATLAB 中,我们可以使用“isnan()”函数查找矩阵中的 NaN 值,然后使用逻辑索引将其移除。
“isnan ()”函数对于 NaN 元素返回 TRUE(逻辑 1),对于非 NaN 元素返回 FALSE(逻辑 0)。
isnan () 的语法
MATLAB 中的“isnan ()”函数采用以下语法:
isnan (A)
其中,“A”是元素矩阵。“isnan ()”函数接受一个参数并返回一个逻辑值矩阵。
示例 1
为了更好地理解 MATLAB 中“isnan ()”函数,让我们考虑以下示例:
% MATLAB program to remove NaN values using isnan() function % Creating a matrix with NaN values X = [1, NaN, 2, 3, 4, NaN, NaN, 5, 6]; % Calling isnan() function to find the indices of the NaN values Y = isnan(X) % using logical indexing to getting a new matrix without NaN values Z = X (~Y)
输出
执行后,它将产生以下**输出**:
Y = 0 1 0 0 0 1 1 0 0 Z = 1 2 3 4 5 6
解释
在这个 MATLAB 程序中,“isnan ()”函数用于创建一个逻辑矩阵“Y”,其维度与原始矩阵“X”相同。在矩阵“Y”中,如果矩阵“X”中对应的元素为 NaN,则每个元素为 TRUE(逻辑 1),否则为 FALSE(逻辑 0)。
逻辑索引 X(~Y) 返回一个矩阵 Z,其中包含矩阵 X 的所有非 NaN 元素。
使用 remmissing () 函数移除 NaN 值
MATLAB 中还有一个函数“remmissing”,可用于从矩阵中移除 NaN 值。此函数首次在 MATLAB R2016b 版本中引入。此函数的最大优点是它提供了一种更简单的方法来移除 MATLAB 中矩阵中的 NaN 值。
语法
**remmissing ()** 函数采用以下语法:
X=[1,NaN,2] Y=remmissing(X)
示例 2
考虑以下示例以了解**remmissing** 函数的工作原理。
% MATLAB program to remove NaN values using remmissing function % Creating a matrix in NaN values X = [1, NaN, 2, 3, 4, NaN, NaN, 5, 6]; % Calling remmissing() over the matrix A to remove NaN values Y = remmissing(X)
输出
它将产生以下**输出**:
Y = 1 2 3 4 5 6
结论
这就是关于如何使用 MATLAB 从矩阵中移除 NaN 值的所有内容。
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP