How can i interpolate this data?
Show older comments
Greetings to you all.
I'm trying to analise some data from an ADCP (Acoustic Doppler Current Profiler). For that, i must process the data.
My matrix works on this way:
Each Row has intensity values
Each column has a certain height in relation to the bottom of the water column.
example:
0 NaN 0.5 0.3 0.7 0.9
0 NaN 0.7 0.4 0.5 0.8
0 NaN 0.9 0.1 0.4 0.5
0 NaN 1.0 0.4 0.3 0.2
The second column is equivalent a 1m height from the bottom and the instrument has not registered those values because of an error. I want to interpolate them.
Appreciate any kind of help.
Accepted Answer
More Answers (1)
Keegan Carvalho
on 19 Apr 2022
Edited: Keegan Carvalho
on 19 Apr 2022
I'd assume "fillmissing" function would be best since you want to inteprolate the data row-wise (and this is not gridded interpolation).
Try this:
mydata = [0 NaN 0.5 0.3 0.7 0.9
0 NaN 0.7 0.4 0.5 0.8
0 NaN 0.9 0.1 0.4 0.5
0 NaN 1.0 0.4 0.3 0.2];
mydata=fillmissing(mydata,"linear",2)
% linear is one of the inteprolation methods you can use. There are others like spline, nearest, etc.
% 2 means inteprolation of data in each row of mydata. 1 - column
Hope this helps!
1 Comment
Gabriel Luca Pugliese Borges
on 19 Apr 2022
Edited: Gabriel Luca Pugliese Borges
on 19 Apr 2022
Categories
Find more on Oceanography and Hydrology in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
