Asked by Melitta
on 21 Mar 2014

Hi All,

I was hoping someone might be able to help me, I am not very good with Matlab so I apologise if this is a stupid question.

I have a series of data that changes over time from being negative to positive. I would like to detect the point at which the data crosses zero. I believe the best way to do this is using a spline curve but I am not sure how to write the routine. Can anyone help me please?!

Thanks

Mel

*No products are associated with this question.*

Answer by Star Strider
on 21 Mar 2014

Not a spline, but my answer to ** Fast zero-crossings with interpolation** seems to work reasonably well. I can probably modify it to work with your data, but I have to know what your data are.

Show 3 older comments

Star Strider
on 24 Mar 2014

I thought the data were going to be a relatively continuous (if noisy) line. It’s instead a scattergram. It’s probably possible to fit a function to it if you want, but if you simply want to know the values of ** X** (Column 1) are for

xylz = V((V(:,3)<0),1); % X-values for Y < 0 yylz = V((V(:,3)<0),3); % Y-values for Y < 0

Using the `find` function is also an option.

Melitta
on 25 Mar 2014

What does V represent in the above function? Sadly this is as clean and continuous as physiological data get!

Thank you for your help

Star Strider
on 25 Mar 2014

I labeled your data as matrix ** V** after eliminating all the

I have a robust background in physiology and physiological measurement from both basic science and clinical perspectives, so I did my best to make sense of your data. Unfortunately, I couldn’t. I didn’t see any obvious relationship.

I assume `VO2` is oxygen consumption, and `Hb` is haemoglobin, but I’m not sure what `HHb` and `HHb.VO2` are. If `HHb.VO2` is `(HHb x VO2)`, I strongly suggest you *not* regress it against `VO2`, since it’s correlated with `VO2` by the way you have defined it. The results will be meaningless.

Answer by Matt J
on 24 Mar 2014

The Curve Fitting Toolbox gives lots of different functions for fitting splines to your data

http://www.mathworks.com/help/curvefit/index.html#splines

You could then use FNZEROS to find their zero crossings.

Related Content

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today
## 0 Comments