119 views (last 30 days)

Show older comments

I have a time series data 'X 'of size 20000 X 50. My step size dt= 0.05

how do I find the velocity of these data

Walter Roberson
on 15 Feb 2021

If ts is the timeseries() variable then

X = ts.Data;

extracts the data.

With your data being 20000 x 50 my guess is that you have 20000 measurements for each of 50 entities, rather than 50 measurements for each of 20000 entities. If I am correct, then you would want the y gradient:

xstep = 1; %doesn't really matter, we are going to ignore

tstep = 0.5; %does matter

[~, ygrad] = gradient(X, xstep, tstep); %horizontal step first, vertical step second

Walter Roberson
on 21 Feb 2021

xstep = 1; %doesn't really matter, we are going to ignore

tstep = 0.5; %does matter

Xunwrapped = unwrap(X, [], 2);

[~, velocity_gradient] = gradient(Xunwrapped, xstep, tstep); %horizontal step first, vertical step second

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!