Filter löschen
Filter löschen

Create the matrix with aligned dates

5 Ansichten (letzte 30 Tage)
Luca Re
Luca Re am 4 Jun. 2023
Kommentiert: the cyclist am 7 Jun. 2023
hi,i've this problem to solve
i've a matrix of date (see pics) A (row) * B(columns)
i used datetime in this matrix
Each date vector can start and end at a different time
I want to synchronize the dates so that each row corresponds to the same date (
example:
Or if it becomes complicated to shift them up or down n boxes, place them side by side with an index (see pics below)
  6 Kommentare
Luca Re
Luca Re am 4 Jun. 2023
Bearbeitet: Luca Re am 4 Jun. 2023
>> A=load("TEST_A.mat");
>> D=load("TEST_B.mat");
>> TEST_sYNCRONIZE
Incorrect number or types of inputs or outputs for function 'synchronize'.
Error in TEST_sYNCRONIZE (line 7)
synchronize(A,D,'union','linear')
i try to union array with different size but it give me error..
According to the documentation it says to use the 'union' and 'linear' command if the vectors don't have linear dimensions
I was wrong.. i don't know the reason but i have to use A.A and D.D to recall the data But it doesn't work the same
Luca Re
Luca Re am 6 Jun. 2023
Verschoben: the cyclist am 6 Jun. 2023
hi, i attach file .m with data to syncronized
i try to syncronized it but it give me error
Someone can help me? thanks
i want this result (see pics below)

Melden Sie sich an, um zu kommentieren.

Antworten (1)

the cyclist
the cyclist am 6 Jun. 2023
load SyncronizedData.mat
for nc = 2:width(J)
[tf,loc] = ismember(J(:,nc),J(:,nc-1));
tmp = J(:,nc);
J(:,nc) = {'NaT'};
J(loc(tf),nc) = tmp(tf);
end
J(all(strcmp(J,'NaT'),2),:)=[]
J = 7×3 cell array
{'13-Jan-2008'} {'13-Jan-2008'} {'NaT' } {'14-Jan-2008'} {'14-Jan-2008'} {'NaT' } {'15-Jan-2008'} {'15-Jan-2008'} {'15-Jan-2008'} {'16-Jan-2008'} {'16-Jan-2008'} {'16-Jan-2008'} {'17-Jan-2008'} {'17-Jan-2008'} {'17-Jan-2008'} {'18-Jan-2008'} {'18-Jan-2008'} {'18-Jan-2008'} {'19-Jan-2008'} {'19-Jan-2008'} {'19-Jan-2008'}
  2 Kommentare
Luca Re
Luca Re am 7 Jun. 2023
I'm having trouble replicating your results
load SyncronizedData.mat
J =
struct with fields:
J: {9×3 cell}
>> J.J
ans =
9×3 cell array
{'NaT' } {'NaT' } {'NaT' }
{'13-Jan-2008'} {'13-Jan-2008'} {'NaT' }
{'14-Jan-2008'} {'14-Jan-2008'} {'NaT' }
{'15-Jan-2008'} {'15-Jan-2008'} {'15-Jan-2008'}
{'16-Jan-2008'} {'16-Jan-2008'} {'16-Jan-2008'}
{'17-Jan-2008'} {'17-Jan-2008'} {'17-Jan-2008'}
{'18-Jan-2008'} {'18-Jan-2008'} {'18-Jan-2008'}
{'19-Jan-2008'} {'19-Jan-2008'} {'19-Jan-2008'}
{'NaT' } {'NaT' } {'NaT' }
should I use J.J instead of J?
the cyclist
the cyclist am 7 Jun. 2023
I'm not sure why you save something different in the file you upload than you did in the file you are using. But, yes, it looks like J.J should work.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by