readmatrix not working in 2021b

11 次查看(过去 30 天)
I upgraded to MATLAB 2021b and readmatrix no longer works. In every case I have tried* I get the error
"Error using readmatrix (line 158)
Dimensions of arrays being concatenated are not consistent."
For example, when I follow the example in the documentation and create a basic_matrix text file with the same input as listed in the documentation and verify its contents as demonstrated in the documentation (as shown below), I get the following
>> type basic_matrix.txt
6,8,3,1
5,4,7,3
1,6,7,10
4,2,8,2
2,7,5,9
>> M = readmatrix('basic_matrix.txt')
Error using readmatrix (line 158)
Dimensions of arrays being concatenated are not consistent.
I have quite a bit of code which I previously used to read data from text files and I can no longer open this data in MATLAB.
I am running on an Intel 2020 MacBook Pro.
==========
*The one exception in which I can get readmatrix to work is a horizontal csv entries as shown below. I tried all combinations I could think of using csv extensions, space between entries, etc.
>> type test.txt
1,2
>> M = readmatrix('test.txt')
M =
1 2
  4 个评论
Walter Roberson
Walter Roberson 2021-10-31
Experiment with
restoredefaultpath; rehash toolboxcache
I suspect that you have a third-party function that is interfering with one of the built-in functions
Matthew Coile
Matthew Coile 2021-10-31
Thanks, Walter. I tried this but it did not work unfortunately.
>> restoredefaultpath
>> rehash toolboxcache
>> M = readmatrix('basic_matrix.txt')
Error using readmatrix (line 158)
Dimensions of arrays being concatenated are not consistent.

请先登录,再进行评论。

采纳的回答

Jeremy Hughes
Jeremy Hughes 2021-11-1
I agree with the previous answer, but readmatrix is probably not what's being shadowed. It's probably something readmatrix relies on.
You can use the following to find the exact place where an error comes from:
>> dbstop if caught error.
But you may need to continue multiple times as readmatrix may encounter internal errors as part of normal functioning. So when you find the error you're looking for, check all the variable names and function on that line (and then in that function) to see if there's something showing up with "which -all <each-thing-on-that-line>".
You can also try removing anything from PATH that isn't part of the MATLAB installation. If this kind of issue persists between installs, it's probably something in a third-party install, or your personal MATLAB folder.
  4 个评论
Steven Lord
Steven Lord 2021-11-2
The height and width functions for arrays were introduced in release R2020b as stated in the Release Notes.
Image Analyst
Image Analyst 2021-11-2
Can't you simply choose a new name for your height function? That's probably the easiest fix. Do control-shift-F at some top level folder and search all m-files for "height(". Any you calls to height() you see that are yours, change them to the new name you've picked for it.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by