csvread file containing text

27 Ansichten (letzte 30 Tage)
HD
HD am 28 Apr. 2016
Kommentiert: HD am 28 Apr. 2016
Hi I have a CSV file as follow (it is only an example, the real file is much bigger)
text1 text2
numb1 numb2 text3 num3 num4 ...
numb5 numb6 text4 num7 num8 ...
. . .
. . .
. . .
the command M2 = csvread('Test.csv',1,3) works well to save the data after the text column.
I would like to save the first two column starting from the second row.
I tried : M = csvread('Test.csv',1,0,[1,0,2,1])
I have an error in reading the data (I assume because of the text in field 3): Trouble reading 'Numeric' field from file (row number 1, field number 3) ==>
Do you any suggestion please ?
Thank you in advance

Akzeptierte Antwort

Stephen23
Stephen23 am 28 Apr. 2016
Bearbeitet: Stephen23 am 28 Apr. 2016
The solution is very simple: use textscan instead. textscan works with files containing mixed (numeric and text) data, whereas the functions csvread and dlmread only read numeric data.
When you have this kind of task it is easy to browse the help documentation and find all of the file reading/writing functions listed:
and then you can read their descriptions, and pick the best one for your task.
  2 Kommentare
Walter Roberson
Walter Roberson am 28 Apr. 2016
C = textscan(fileID,'%f%f%*[^\n]');
The %*[^\n] will match everything up to the end of the line, and discard it.
HD
HD am 28 Apr. 2016
it is working now .. thank you!!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Data Import and Export finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by