Add an element to a vector after taking difference

3 views (last 30 days)
Dear Matlab community,
I am currently running some stationarity test, for which I take log-differences. However, if stationatiry tests still suggest non-stationarity, I would have to take the second difference.
The problem obviously is, that taking another difference changes the vector size, as now some of my variables are by 1 element shorter (those with the second difference).
I would like to add a zero as the first element to those column vectors, in order to restore equal dimensions.
It would basically look like this:
A =
X
X
X
B=
0
X
X
X
Thank you very much in advance!
Chris

Accepted Answer

Star Strider
Star Strider on 3 Sep 2015
That is easy enough to do:
B = [0; A];
However another way might be to use interp1 to artificially ‘stretch’ ‘A’:
A = randi(9, 14, 1); % Create Data: ‘A’
Ax = [1:14]'; % Independent Variable Vector For ‘A’
Bx = [1:15]'; % Independent Variable Vector For ‘B’
B = interp1(Ax, A, Bx, 'linear', 'extrap'); % Interpolate/Extrapolate To Calculate ‘B’
I offer it as an alternative.

More Answers (0)

Categories

Find more on Testing Frameworks 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!