How to remove numbers from a vector?
6 次查看(过去 30 天)
显示 更早的评论
I am using graphical data and looping round a set of data. So, how can I write an if statement to remove zeros from the start and end of the vector so that only the needed data is there, I dont want to remove all zeros though as the middle section of all the data sets has zeros which are needed?
The variable that the data sets loop through is called z_force
0 个评论
采纳的回答
Walter Roberson
2020-12-30
minidx = find(z_force, 1, 'first')
maxidx = find(z_force, 1, 'last')
z_force(minidx:maxidx)
2 个评论
Image Analyst
2020-12-30
minidx = find(z_force, 1, 'first')
maxidx = find(z_force, 1, 'last')
z_force = z_force(minidx:maxidx) % Extract and assign back to z_force, overwriting the original.
更多回答(1 个)
William
2020-12-30
You could use something like:
while z_force(1)==0
z_force(1) = [];
end
while z_force(end)==0
z_force(end) = [];
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!