在 MATLAB 中从向量中删除零
本文将讨论使用 MATLAB 中的 find()
函数从向量中删除零值。
在 MATLAB 中从向量中删除零
要从向量中删除零,我们需要使用 find()
函数找到向量中存在的零的索引或位置,该函数将返回零的索引。然后我们可以使用空向量或空向量为它们分配空值。
默认情况下,find()
函数将返回非零元素的索引,但我们可以在 find()
函数中放置条件以返回零的索引。例如,让我们定义一个包含一些零的向量并使用 find()
函数删除它们。
请参阅下面的代码。
clc
clear
n = [1 0 2 0 3 0]
indices = find(n==0)
n(indices) = []
输出:
n =
1 0 2 0 3 0
indices =
2 4 6
n =
1 2 3
我们可以在上面的输出中看到 find()
函数返回索引,它指示向量中存在的所有零值的位置,然后我们使用索引将空向量分配给零。
在 find()
函数中,我们定义了条件 n==0
,这意味着该函数将一个一个地遍历向量的值。如果向量值为零,它将返回其索引并移动到下一个值。
我们还可以定义其他条件,例如我们是否要删除或查找向量中存在的其他一些值。我们可以使用条件运算符,如小于、等于、大于、小于或等于、大于或等于和不等于在 find()
函数内定义条件。
如果我们不想删除所有的零值,而只想像前两个值一样删除几个零值,我们可以使用 find()
函数的第二个参数,它用于设置输出指标。
例如,让我们重复上面的示例并删除向量中的前两个零。请参阅下面的代码。
clc
clear
n = [1 0 2 0 3 0]
indices = find(n==0,2)
n(indices) = []
输出:
n =
1 0 2 0 3 0
indices =
2 4
n =
1 2 3 0
我们可以在上面的输出中看到前两个零被删除,第三个零仍然存在于给定向量中。默认情况下,find()
函数从向量的开头开始搜索元素。
尽管如此,我们也可以将其设置为从向量的最后一个元素开始搜索过程,并使用 find()
函数的第三个参数移动到第一个元素,该参数用于设置方向。我们必须在 find()
函数的第三个参数中传递字符串 last
来设置它的方向。
例如,让我们重复上面的示例并删除给定向量中存在的最后两个零。请参阅下面的代码。
clc
clear
n = [1 0 2 0 3 0]
indices = find(n==0,2,'last')
n(indices) = []
输出:
n =
1 0 2 0 3 0
indices =
4 6
n =
1 0 2 3
我们可以在上面的代码中看到,最后两个零已从向量中删除,而第一个零仍然存在。查看此链接以获取有关 find()
函数的更多详细信息。
相关文章
如何在 Matplotlib Pyplot 中显示网格
发布时间:2024/02/04 浏览次数:142 分类:Python
-
本文演示了如何在 Python Matplotlib 中在一个图上画一个网格。使用 grid()函数来绘制网格,并解释了如何改变网格颜色和线条类型。
在 Matplotlib 中的图中添加文字
发布时间:2024/02/04 浏览次数:180 分类:Python
-
本教程展示了我们如何使用 plt.text()方法在 Matplotlib 中为图或轴添加文字。
如何在 Matplotlib 中的多个线条之间进行填充
发布时间:2024/02/04 浏览次数:208 分类:Python
-
`fill_between()` 每次只能填充两条线之间的区域,但是我们可以选择一对行来填充多个线条之间的区域。
如何在 Matplotlib 中画一条任意线
发布时间:2024/02/04 浏览次数:166 分类:Python
-
本教程讲解了我们如何在 Matplotlib 中使用 matplotlib.pyplot.plot()、matplotlib.pyplot.vlines()、matplotlib.pyplot.hlines()方法和 matplotlib.collection.LineCollection 绘制任意线条。
Pandas 在 Matplotlib 柱状图上绘制多列图
发布时间:2024/02/04 浏览次数:189 分类:Python
-
在本教程中,我们将探讨如何使用 `DataFrame` 对象的 `plot()` 方法在柱状图上绘制多列。
如何在 Matplotlib 中绘制数据列表的直方图
发布时间:2024/02/04 浏览次数:178 分类:Python
-
本教程介绍了如何使用 plt.hist()方法从数据列表中绘制直方图。我们可以使用 plt.hist()方法从数据列表中绘制直方图。
Matplotlib 中的叠加条形图
发布时间:2024/02/04 浏览次数:182 分类:Python
-
本教程展示了如何使用 plt.bar()方法将某些数据集的条形图堆叠在另一个数据集上。我们在 Matplotlib 中使用 matplotlib.pyplot.bar()方法生成条形图。
在 Python Matplotlib 中生成反向色彩图
发布时间:2024/02/04 浏览次数:136 分类:Python
-
本教程解释了如何反转 Python Matplotlib Plot 的 Colormap。
设置 Matplotlib 网格间隔
发布时间:2024/02/04 浏览次数:250 分类:Python
-
本教程将介绍我们如何在 Matplotlib 绘图中设置网格间距,并对主要网格和次要网格应用不同的样式。