Borrar filtros
Borrar filtros

Fill blank spaces from lagged data with NaN

3 visualizaciones (últimos 30 días)
Robert
Robert el 15 de Dic. de 2015
Editada: dpb el 16 de Dic. de 2015
I have a code which lags one data set in relation to another. The lag is determined based on r^2 values previously figured out.
The problem I have is that when the data is lagged, some data is removed. For example where there is a lag of +1 a vector of 96 rows becomes a vector of 95 rows. I want to fill that missing row is NaN so that it remains at 96. See code below. Thank you in advance for any help.
clear all;
clc
lag = load ('lagtime.txt'); %File contains the time by which each column will be lagged
A1 = load ('data\Anomalies\TWSA1anomalies.mat');
Approx1x = A1.TWSA1anomalies;
Approx1y = reshape(Approx1x,[1505,96]);
Approx1z = Approx1y';
NDVIdata = load ('data\Anomalies\NDVIanomalies.mat');
NDVIx = NDVIdata.NDVIanomalies;
NDVIy = reshape(NDVIx,[1505,96]);
NDVIz = NDVIy';
for j = 1:1505
m = lag(1,j)
GRACEcrop = Approx1z(1:(96-m),j);
NDVIcrop = NDVIz((1+m):96,j);
dlmwrite ('GRACECROPVEC.txt',GRACEcrop,'-append');
dlmwrite ('NDVICROPVEC.txt',NDVIcrop,'-append');
end
GRACEVEC = load ('GRACECROPVEC.txt');
NDVIVEC = load ('NDVICROPVEC.txt');
NEWGRACELAG = reshape(GRACEVEC,[96,1505]);

Respuesta aceptada

dpb
dpb el 15 de Dic. de 2015
Editada: dpb el 16 de Dic. de 2015
Instead of selecting the first N points,
GRACEcrop = Approx1z(1:(96-m),j);
just set the last m to NaN...
Approx1z(end-m+1:end,j)=nan;
and then write the modified array. No need for a new array at all (unless you have reason to also keep the unmodified in memory as well, of course).
  2 comentarios
Robert
Robert el 15 de Dic. de 2015
Thanks for your answer, however, it didn't seem to work, it made all of the output NaN. I'm also not sure that I understand your reference to changing the last m to NaN, as m is only 1 number per loop (generally 0-6).
dpb
dpb el 16 de Dic. de 2015
Oops, missed fixing up the index...see correction above...

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Cell Arrays en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by