How to read a large CSV in chunks;

3 views (last 30 days)
ariane
ariane on 23 Aug 2018
Answered: Rishi Binda on 28 Aug 2018
I have the following code which filters a very large CSV.
opts = detectImportOptions('Z_EnergySequence.dat');
data = readtable('Z_EnergySequence.dat',opts);
tol = 1e-6;
filter = 4.125;
filterreddata = data(abs(data.X - filter) < tol, :);
filteredions = data(ismember(data.IonN, filterreddata.IonN),:);
filteredions(1:2:end,:)= [];
writetable(filteredions, 'Published/Z_EnergySequence1.csv');
I think I may be getting errors in the data processing. Is there a way in which I can read the whole CSV in chunks and output to the same file?
  1 Comment
Jan
Jan on 23 Aug 2018
Edited: Jan on 23 Aug 2018
I think I may be getting errors in the data processing
This seems to be a pure speculation. Do not try to fix not existing problems.

Sign in to comment.

Answers (1)

Rishi Binda
Rishi Binda on 28 Aug 2018
If you want to read specific range of the generated csv file you can use one of the following :
  • csvread
  • dlmread
  • xlsread

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!