Loading very large CSV files (~20GB)

9 vues (au cours des 30 derniers jours)
Sadjad Fakouri Baygi
Sadjad Fakouri Baygi le 17 Mar 2016
I have some CSV files that I need to import into the MATLAB (preferably in a .mat format). I already tried to break down these files using csvread function into 100 cluster pieces, but it's very slow and it doesn't go further than 60 steps even though my computer machine is fairly new. I need to extract only numeric values and this values are separated by comma. I will appreciate it if you can help me to get through this.
Thanks,
Sajad
  2 commentaires
per isakson
per isakson le 17 Mar 2016
Sadjad Fakouri Baygi
Sadjad Fakouri Baygi le 17 Mar 2016
Thanks, This shortcut worked out.

Connectez-vous pour commenter.

Réponse acceptée

Robert
Robert le 17 Mar 2016
You should look into datastore and mapreduce. They were introduced in R2014b and are intended for handling large data sets. The datastore object allows you to read the data in chunks, skip columns, and store the results in a table. It's behavior is somewhat similar to fread or fscanf with a size input; however, the datastore's use of a table allows you to assign different data types to each column. I use this for data that includes Boolean status bits along with doubles so that I don't have to store the Booleans as doubles in my data array.
mapreduce is specifically designed for operating on data sets that don't fit in memory. Rather than attempt to explain it I will simply suggest you check out the documentation.
docsearch Getting started with mapreduce
  1 commentaire
Sadjad Fakouri Baygi
Sadjad Fakouri Baygi le 18 Mar 2016
This solution is more professional, and worked very well.
Thanks,

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Large Files and Big Data dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by