Precision lost while reading from Excel file to a Matlab table

26 views (last 30 days)
Hi,
I am using readtable to read a large high precision matrix from Excel. How to make sure I read the entire decimal points? Thanks,
Jennifer
  2 Comments
JFz
JFz on 31 Oct 2016
I used 'Format' in readtable, but I got this error:
Invalid parameter name: Format.
dpb
dpb on 31 Oct 2016
How did you determine there was a loss of precision? If the values in the spreadsheet are numeric, then by default readtable will read them as double precision which is the same as what Excel uses.
Show your work and a sample of the data...

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 31 Oct 2016
readtable() will read the entire binary content that is present in Excel.
However, when you display the output of readtable, the output might not show the entire content. The output would depend upon the "format" command that is in effect.
  2 Comments
JFz
JFz on 31 Oct 2016
Thanks. My matrix is 3000x3000 and each cell is a number with 6 decimals. But after readtable reads in the matrix, each cell becomes only 4 decimals after looking at the output of readtable. I am struggling at how to keep the 6 decimals.
Thanks,
jennifer
Walter Roberson
Walter Roberson on 31 Oct 2016
This is not a matter of the readtable() 'Format' option.
At the MATLAB command line give the command
format long g
and display the table again.
The default output is "format short" which is only 4 decimal places.

Sign in to comment.

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!