Effacer les filtres
Effacer les filtres

Fill vector with missing values

3 vues (au cours des 30 derniers jours)
hdiba
hdiba le 20 Juil 2016
Commenté : Andrei Bobrov le 20 Juil 2016
Hello, i have vectors that represent the day-,month and year values.As you can see in the example below, the day an month vectors do not start with 1, what would be 1. Januar. The vector also dont end with 31 and 12, what would be 31. December. Does anyone have any suggestion how i can first check what is the starting value of day and month and thenn fill the missing valuse, so i have a complete year? thanks a lot!
Day: Month: Year:
6 8 1993
7 8 1993
8 8 1993
9 8 1993
. . .
. . .
. . .
3 11 1993

Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 20 Juil 2016
yyear = [Year,Month,Day];
y1 = datevec(datenum([Year(1) 1 1]):datenum([Year(1) 12 31]));
y1 = y1(:,1:3);
missing_values = y1(~ismember(y1,yyear,'rows'),:);
  2 commentaires
hdiba
hdiba le 20 Juil 2016
Thanks a lot. I have another variable with entries for the days, for example: measurement of rainfall on every day.. now that i've filled the missing dates, i would like to add zero values for the rainfall for the added dates? can u help?
Andrei Bobrov
Andrei Bobrov le 20 Juil 2016
yourdata = [Year,Month,Day,rainfall];% rainfall - vector with data of rainfall
y1 = datevec(datenum([Year(1) 1 1]):datenum([Year(1) 12 31]));
y1 = y1(:,1:3);
t = ismember(y1,yourdata(:,1:3),'rows');
out = [y1,zeros(size(y1,1),1)];
out(t,4) = yourdata(:,end);

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Functions 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!

Translated by