Add an element to a vector after taking difference
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Christoph Meier
le 3 Sep 2015
Commenté : Star Strider
le 3 Sep 2015
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
0 commentaires
Réponse acceptée
Star Strider
le 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.
2 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Testing Frameworks dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!