Combine two tables based on date time

25 visualizaciones (últimos 30 días)
Dion Theunissen
Dion Theunissen el 3 de Ag. de 2021
Comentada: Peter Perkins el 5 de Ag. de 2021
I have a table A with a datetime (Year, month day and time) and a table B with a datetime(year month day)
Now I have to combine those two tables with each other based on the date. I have to check what date will match from table A to table B and the that index of table B.
For now I have this script, but it doesn't work
check = dir('*.xls');
weatherYear = readtable("/Users/diontheunissen/Documents/Smart_Driver/RawData/weatherYear.xlsx", opts, "UseExcel", false);
Date = datetime(weatherYear.Aug2020);
name = fullfile(check(1).folder, check(1).name);
Ritten = readtable(name, opts, "UseExcel", false);
Datum = datetime(Ritten.Starttijd);
Datum.Format = 'dd-MMM-yyy';
Ritten.Starttijd = Datum;
t1 = datetime(Datum,'InputFormat','yyyy-MM-dd');
t2 = datetime(Date,'Format','yyyy-MM-dd');
[logical_Index ,index] = ismember(t1,t2);
A =
B=
Anyone who can help me?

Respuestas (1)

Scott MacKenzie
Scott MacKenzie el 3 de Ag. de 2021
TT1 = table2timetable(A);
TT2 = table2timetable(B):
TT3 = synchronize(TT1, TT2);
  2 comentarios
Dion Theunissen
Dion Theunissen el 3 de Ag. de 2021
Check my update, maybe it will be a bit more clear
Peter Perkins
Peter Perkins el 5 de Ag. de 2021
Scott's answer is the right way to do this, although you may want to be more xplicit and specify the target time vector and the method. But I think the defaults do what you want.

Iniciar sesión para comentar.

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Productos


Versión

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by