Info

此问题已关闭。 请重新打开它进行编辑或回答。

Appending data based on same dates

1 次查看(过去 30 天)
Lee
Lee 2018-8-27
关闭: MATLAB Answer Bot 2021-8-20
I have two long tables. The first table (A) has two columns. The first indicates a date and the second indicates a value. A sample of the table is illustrated below:
A =
06-Jun-2015 00:00:00 1
07-Jun-2015 00:00:00 6
08-Jun-2010 00:00:00 1
08-Jun-2011 00:00:00 1
09-Jun-2010 00:00:00 52
09-Jun-2011 00:00:00 1
The second table contains a sample id and dates.
B =
"ahfeog" '08-Jun-2011 06:00:00'
"ahegao" '09-Jun-2010 21:00:00'
"agejho" '07-Jun-2015 03:00:00'
"ehagoa" '06-Jun-2015 06:00:00'
"eozjmv" '06-Jun-2015 18:00:00'
Ignoring the times, I want to be able to append the two tables together based on the date. My problem is that table B is significantly larger than table A and has repeat dates. Ideally my output would look like this:
Out =
"ahfeog" '08-Jun-2011 06:00:00' 1
"ahegao" '09-Jun-2010 21:00:00' 52
"agejho" '07-Jun-2015 03:00:00' 6
"ehagoa" '06-Jun-2015 06:00:00' 1
"eozjmv" '06-Jun-2015 18:00:00' 1
Could someone help me figure out how to do this?

回答(2 个)

Paul Shoemaker
Paul Shoemaker 2018-8-27
Hello Lee,
You might want to convert these two tables to timetables and then combine them using various functions, such as "synchronize."
Matlab has some examples here.
Paul Shoemaker
  1 个评论
Lee
Lee 2018-8-27
Hello Paul Shoemaker,
Thank you for the response. Unfortunately, synchronize does not handle replicate dates and instead deletes one of the variables. The output I got was:
'08-Jun-2010 00:00:00' '<undefined>' 1
'09-Jun-2010 00:00:00' 'ahegao' 52
'08-Jun-2011 00:00:00' 'ahfeog' 1
'09-Jun-2011 00:00:00' '<undefined>' 1
'06-Jun-2015 00:00:00' 'ehagoa' 1
'07-Jun-2015 00:00:00' 'agejho' 6
Any other suggestions?

BasO
BasO 2018-11-12
Hi Lee,
Try to format the dates to 'dd-mmm-yyyy', this allows Matlab to syncronize as Paul said in his link.
Regards,

此问题已关闭。

Community Treasure Hunt

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

Start Hunting!

Translated by