writematrix output file that can't be read by textread

7 views (last 30 days)
I am using writematrix to write a 2D matrix to csv, and read this csv later elsewhere (e.g., Python Numpy).
The problem is that this file always errors, even when I read this file using textread.
Would you please help me?
Here is a sample code to reproduce the issue:
filename_ = 'sample_matrix.csv';
writematrix(rand(20,30), filename_);
textread(filename_) % this errors

Accepted Answer

Walter Roberson
Walter Roberson on 17 Apr 2023
The format specification is mandatory for textread
Perhaps you wanted readmatrix or readlines or fileread
  4 Comments
Mahmoud Elzouka
Mahmoud Elzouka on 18 Apr 2023
When I changed the encoding to 'windows1251', the file can be read by numpy.loadtxt. Thanks for your help.
FYI, this still errors:
filename_ = 'windows1251.csv';
writematrix(rand(20,30), filename_, 'Encoding', 'windows1251');
textread(filename_) % this errors
Walter Roberson
Walter Roberson on 18 Apr 2023
textread must be given at least two parameters. textread is for reading formatted data and you have to tell it the format. textread is not for reading a file as a single character vector: I already gave links to two routines for that.

Sign in to comment.

More Answers (0)

Categories

Find more on Data Import and Export in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!