The number of lines on ASCII file should be same - error

1 次查看(过去 30 天)
Hi Team
I wrote this simple code to understand loading and saving
tan =randi([-1,3],2,3)
save 'testtan.dat' tan
clear
load 'testtan.dat' 'tan'
Error using load
Number of columns on line 2 of ASCII file testtan.dat must be the same as previous lines.
So. I need help understanding what it means. My matrix seems to be fair but what does it mean ' columns of ASCII file'.
Please help.
I have used importdata and other methods, they are fine but I want to understand load function in depth as i will be using it a lot.
Thank you
R

采纳的回答

Cris LaPierre
Cris LaPierre 2019-10-23
What are you trying to do?
You can read more about save in the doc. There are also examples there to help you get started.
If you are trying to create mat files (MATLAB's way of saving variables), try the following
tan =randi([-1,3],2,3)
save('testtan','tan')
clear
load 'testtan'
If you instead are trying to save the data to a file in ascii format, try this
tan =randi([-1,3],2,3)
writematrix(tan,'testtan.dat')
clear
tan = readmatrix('testtan.dat')
  2 个评论
Cris LaPierre
Cris LaPierre 2019-10-23
编辑:Cris LaPierre 2019-10-23
If you are partial to doing it the way you've shown, then you'll need to specify the format of testtan.dat. When using save, MATLAB will try to format the file contents based on the extension. Not sure what it is doing with *.dat, but forcing '-ascii' fixes the issue you are seeing.
tan =randi([-1,3],2,3)
save('testtan.dat','tan','-ascii')
clear
tan = load('testtan.dat')
The second argument in the load command (variables) is only supported for *.mat files. If you are going to use a different file extension, that argument cannot be used.
R HULD
R HULD 2019-10-25
编辑:R HULD 2019-10-25
thank you. all those suggestions were great. especially about .mat file argument. :)

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Workspace Variables and MAT-Files 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by