Is there a function Is_array in matlab ?

I may be a newbie in matlab have a small problem with a libray in matlab : I don't know if there a function is_array in matlab.
Error in tt_tensor (line 183) if is_array(varargin{1})
My code worked somme weeks ago but didn't work since yesterday.
If someone could help me, I will be gratfull.

 Respuesta aceptada

KALYAN ACHARJYA
KALYAN ACHARJYA el 11 de Dic. de 2020
Editada: KALYAN ACHARJYA el 11 de Dic. de 2020
No, there is no "Is_array" inbuilt function in MATLAB, there is "isvector" inbuilt function
isvector(data) returns logical 1 (true) if data is a vector. Otherwise, it returns logical 0 (false).
More: There is "uiarray" function, this function is used primarily for creating UI controls of demos of the toolbox.
Deatail, please check
>> help uiarray

6 comentarios

Hi KALYAN,
Thank you for the answer. The problem is that i'm using a function tt-factor() from tt-toolbox library. And the problem is that I can't manipulate this function because it needs is_array().
So probably function didn't exist in matlab, but it exist in c++, so can I use std library cpp in matlab ?
Finaly I decide to use the comnation isvector(size(x)) instead of is array.
Thanks for the help.
KALYAN ACHARJYA
KALYAN ACHARJYA el 11 de Dic. de 2020
Welcome
:)
Zeng
Zeng hace alrededor de 23 horas
Editada: Walter Roberson hace alrededor de 23 horas
I encounter the same problem when using TT-toolbox ( https://github.com/oseledets/TT-Toolbox ). I guess maybe there is a time when is_array is usable in matlab but now we can only use ismatrix as a substitute? Since array in python behave just same as matrix, and in matlab we always call a n-dimensional thing a matrix. Just curious whether this is an explanation.
Walter Roberson
Walter Roberson hace alrededor de 22 horas
I doubt that there was ever a function named is_array in the remote past. Functions named with an underscore is not Mathworks style for core functions; Mathworks would have used isarray
Stephen23
Stephen23 hace alrededor de 18 horas
"in matlab we always call a n-dimensional thing a matrix"
No, we never call a n-dimensional thing a matrix. The MATLAB documentation states "All MATLAB variables are multidimensional arrays, no matter what type of data. A matrix is a two-dimensional array often used for linear algebra."
So a matrix is just an array where all dimensions >2 are scalar. This matches exactly the definition used by ISMATRIX, which states that "A matrix is a two-dimensional array that has a size of m-by-n, where m and n are nonnegative integers."
Using an incorrect definition of matrix is likely to caus a lot of confusion, as your comment indicates.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Preguntada:

el 11 de Dic. de 2020

Comentada:

el 3 de Mzo. de 2026 a las 12:25

Community Treasure Hunt

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

Start Hunting!

Translated by