Missing rows in cell array generated from CSV file
Show older comments
I am using a MATLAB script that uses the readcell function to read in data from multiple CSV files. Each file is relatively large (4.5 MB) and is read in with the 'ConsecutiveDelimitersRule' set to 'split'.
When I compare the MATLAB cell generated by readcell to the original CSV file, several rows in the CSV file are not present in the cell array. There does not appear to be a consistent pattern of which rows are skipped over during the import process.
Are there any potential issues with this setup given the file format and size?
6 Comments
Torsten
on 14 Jul 2026 at 21:10
Can you include a small .csv file and your code to reproduce this behaviour ?
dpb
on 14 Jul 2026 at 22:11
As @Torsten says, it will not be possible to diagnose this without a file that creates the issue. If you can't simply snip out a section around the apparently missing section of the original file and reproduce the symptoms, you would be able to post a compressed version of the file if run into size limits. Of course, the smaller you can make and still reproduce the problem, the better...
My crystal ball says will find some aberration in the file construction underlying it, but "ya' never knows!"
Most likely causes are things like differing number of delimiters in one or more rows, embedded nonprinting characters, malformed or non-quoted strings and the like. It is, however, impossible to diagnose a precise issue here without an example file that exhibits the symptoms.
Answers (1)
Ishan
16 minutes ago
A CSV file of this size should generally not cause readcell to omit or reorder rows. In particular, row reordering would not be expected from a sequential import operation.
Based on the behavior described, the issue is more likely related to how the file is being parsed than to the file size itself. Common causes include embedded delimiters, quoted text fields, line breaks within quoted fields, inconsistent field counts between rows, or other formatting irregularities that can affect CSV parsing.
Since the Import Tool appears to read the file correctly, one possible approach is to use:
opts = detectImportOptions(filename);
C = readcell(filename,opts);
This uses the same detected import configuration that the Import Tool would typically derive from the file.
If the results differ between the Import Tool and readcell, I would inspect the file for quoting and delimiter-related formatting issues, particularly near the rows that appear to be missing or reordered.
Categories
Find more on Spreadsheets in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!