MATLAB Answers

CSV file imported with readmatrix is misreading the data in the CSV file

5 views (last 30 days)
James Andrada
James Andrada on 18 Nov 2019
Answered: James Andrada on 18 Nov 2019
I'm trying to read a roughly 400 row csvfile consisting of one column of 3 digit numbers and 35 colums of 8 digit integres. The resulting array consists of 5 digit numbers with a decimal point after the first number. This isn't too helpful. The numbers represent measured frequencies in the 15MHz range so I'm losing data when importing

  0 Comments

Sign in to comment.

Answers (4)

per isakson
per isakson on 18 Nov 2019
Edited: per isakson on 18 Nov 2019
"The resulting array consists of 5 digit numbers with a decimal point after the first number." I assume that you describe how the numbers are displayed in the Command Window.
Try
format long
Example:
>> format long
>> pi
ans =
3.141592653589793
>> format short
>> pi
ans =
3.1416
>>
"I'm losing data when importing" No, it's only a question of how the values are presented.

  0 Comments

Sign in to comment.


James Andrada
James Andrada on 18 Nov 2019
Thanks
It turned out that "longEng" displays them correctly - values were OK but displaying incorrectly.
By the way, is there any way to associate the format type with a variable, not globally for the workspace. Using "longEng" for 3 digit integres is very clumsy.

  1 Comment

Sign in to comment.


James Andrada
James Andrada on 18 Nov 2019
Thanks. That's too bad. I guess I just need to issue a format command before printing.

  1 Comment

per isakson
per isakson on 18 Nov 2019
"printing" See the documentation on fprintf.
Example
>> fprintf( 1, '%.2f\n', pi )
3.14
>> fprintf( 1, '%.4f\n', pi )
3.1416

Sign in to comment.


James Andrada
James Andrada on 18 Nov 2019
Thanks much. That's very helpful. I was thinking there might be a way to do it but hadn't had time to look into it yet today.

  0 Comments

Sign in to comment.

Sign in to answer this question.

Products