MATLAB: How to compute mean and variance of a cyclogram

cyclogramellipsemean

hi there,
I have two variables X and Y that I plot against each other. the result is a cyclogram, means the signal repeats itself over multiple loops. I want to compute the mean cycle and the variance at each point of the cycle. I know I could cut the signal from the loop start to the following start for both X and Y, then calculate mean and std over multiple arrays. But because it is easier for me to export the all signal over a trial, I was wondering whether it is possible to compute mean and variance using the two time series. The result should look something like this:
The ellipses indicates the variance and black bold line the mean I want to compute.
Thanks for your help.
Ale

Best Answer

You can create a timeseries object for your data (X,Y) and use the MATLAB functions mean and var to calculate mean and variance for each sample of (X,Y).
Assuming X and Y are row vectors(i.e having dimension 1xn)
% Create a timeseries object
ts = timeseries([X;Y]);
% Calculate mean
ts_mean = mean(ts);
% Calculate variance
ts_variance = var(ts);
ts_mean and ts_variance will be vectors/arrays of dimension 1xn