我有一个带有前导和尾随零的小波函数。我想去掉所有出现在小波之前或之后的零。但是,我不想删除小波本身中的任何零。为了简单起见,假设我有以下1x11向量:
0 0 0 -2 -1 0 -1 -2 0 0 0
删除前导零和尾随零后,向量应为:
-2 -1 0 -1 -2
我的实际向量很大,性能是我最关心的问题。我是一名MATLAB新手,如果有任何关于如何尽可能高效地完成这项任务的提示,我将不胜感激。
发布于 2011-03-30 23:35:11
尝尝这个
y = x(find(x,1,'first'):find(x,1,'last'));
find(x,1,'option')
命令提供第一个和最后一个非零索引。
发布于 2011-03-30 23:36:25
i1 = find(X, 1, 'first')
将为您提供X
的第一个非零元素的索引
i2 = find(X, 1, 'last')
会给你最后一个的索引。然后
X(i1:i2)
将给出去掉前导零和尾随零的数组。
https://stackoverflow.com/questions/5488504
复制相似问题