edit large CSV file before reading it to a table

hi,
I have a very large (16Gb) CSV file that contains one column with data separated by semicolumn.
I only need 2 columns from this data, but I cannot read it first since the memory is running out (I have 16Gb ram).
Is it possible to somehow separate the semicolumn to a column and read only the data I need (which is 2/6 columns)?

2 Commenti

Stephen23
Stephen23 il 6 Mag 2021
Modificato: Stephen23 il 6 Mag 2021
How do you expect to get "...2 columns from this data..." from a "...CSV file that contains one column with data..." ?
It contain one column but the data is saperated in ';'.
basicly I needed to saperate it first and than to read only whats relevant for me.
see wallter solution, it was actually really halpful.

Accedi per commentare.

 Risposta accettata

Use 'delimiter', ';', and 'SelectedVariableNames' with a vector that is the two column numbers.

1 Commento

thank you very much walter!
for some reason not only that it maneged to read the data, it also write it really fast in readtable() function. much faster than other smaller files I'm reading.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by