How to import data from a csv that contains strings numbers and blank cells

7 Ansichten (letzte 30 Tage)
I have a csv that contains a single column with a lot of data in it. The data is a variety of strings, numbers and blanks, where I want to keep it in the exact order including all of the blank cells. So an example of the data would be:
A
05
G
12
I have tried to use importdata and this works perfectly, the problem is my csv has over 1 million rows and for some reason using importdata only imports to just over the first 100k rows.
Any help would be appreciated!
  5 Kommentare
Philip Caplan
Philip Caplan am 15 Apr. 2015
Have you tried using "csvread" to import the entire column? For some examples, please see:
R2
R2 am 16 Apr. 2015
csvread does not work as it only accepts numerical values, as I have text in the column as well as numbers I get an error message.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Star Strider
Star Strider am 16 Apr. 2015
I would experiment with textscan.
Example:
fidi = fopen('filename.csv');
D = textscan(fidi, '%s', 'Delimiter',',');
fclose(fidi);
This should read everything in as a cell array of strings. (I don’t have your file, so this is just a guess on my part. I will leave it to you to experiment.) You may need other arguments in the textscan call (such as 'EndOfLine'), but it may work as described here without any changes.
  2 Kommentare
R2
R2 am 19 Apr. 2015
I changed the delimiter to \n to include all of the blank spaces, but otherwise this worked! Thanks for your help!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Roberto Herrera-Lara
Roberto Herrera-Lara am 14 Apr. 2015
100k rows, and if you do the same process several times(10 times) and then you concatenate the matrixs, i dont know, perhaps works!! =) Divide and conquer algorithm

Community Treasure Hunt

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

Start Hunting!

Translated by