increment high resolution distance data by lower resolution equal steps
2 次查看(过去 30 天)
显示 更早的评论
I have distance data at very high resolution, uneven intervals, and want to reduce the resolution and have equal intervals. I know how to do this in excel vba but i'm having difficulty in figuring out how to do this in Matlab.
In excel vba, my code basically says the following:
% code
Increment value (IV) = 0.045 miles
Start Value (SV) = Active Cell
If active cell value > IV + SV
Then round active cell to nearest 0.05
Next cell until end of column...
end
Essentially, the vba code checks to see if a cell's value is > the point before my incremental value. If it is, it will round this distance point to the nearest 0.05 mile.
What is the best way to go about this code in matlab? Combination of functions? loop?
0 个评论
回答(2 个)
Star Strider
2017-4-5
I would use the interp1 function, using the linspace function to create the interpolation vector.
0 个评论
Guillaume
2017-4-5
Wouldn't
round(yourvector / desiredstep) * desiredstep
%or
round((yourvector - yourvector(1)) / desiredstep) * desiredstep
produce what you want? E.g.:
v = sort(round(1, 100)) + 1.25; %demo vector in uneven increments from 1.25 to 2.25
round(v / 0.05) * 0.05 %same vector rounded to the nearest 0.05 step.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Import from MATLAB 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!