Dealing with large timetables

5 vues (au cours des 30 derniers jours)
Lutetium
Lutetium le 28 Oct 2020
Commenté : Star Strider le 29 Oct 2020
I generated two timetable [283580428x5] and [21317257x2] and have also written them to a file using writetimetable().
Now I would like to synchronize them using synchronize [table1, table 2] but I get 'out of memory' very soon after executing the command.
Is there a way to process these table blockwise or any advice how I can handle these kind of large timetable efficiently w/o running out of memory? I appreciate any help or guidance

Réponse acceptée

Star Strider
Star Strider le 28 Oct 2020
The only option I can suggest to you is in the timetable documentation section on Extended Capabilities under Tall Arrays. (I have no personal experience with huge data sets.)
  4 commentaires
Lutetium
Lutetium le 29 Oct 2020
Thanks, I got it to work now with your input. It may be the lack of experience but I agree, figuring out the correct import options can be quite frustrating.
In the end, I converted to a tall array and performed the synchronization. With write the synchronization is executed.
Using the datastore, I can recall the timetable again without any importing options. In temp, the data is stored a *.mat files.
ds1 = tall(variable)
ds2 = tall(variable)
ds3 = synchronize(ds1,ds2)
location = 'E:\Temp'
write(location,ds3)
location = 'E:\Temp'
ds = datastore(location)
Star Strider
Star Strider le 29 Oct 2020
As always, my pleasure!
I have obnly used the datastore function once, and forgot to mention it as an option.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by