Extract array dimensions in Julia

arrays, julia, matlab

Solution

A = zeros(3,5)
sz = size(A)

returns a tuple `(3,5)`. You can refer to specific elements like `sz[1]`. Alternatively,

m,n = size(A,1), size(A,2)

This works even if `A` is a column vector (i.e., one-dimensional), returning a value of `1` for `n`.

Problem

Given a vector A defined in Matlab by: ``` A = [ 0 0 1 0 0 ]; ``` we can extract its dimensions using: ``` size(A); ``` Apparently, we can achieve the same things in Julia using: ``` size(A) ``` Just that in Matlab we are able to extract the dimensions in a vector, by using: ``` [n, m] = size(A); ``` irrespective to the fact whether A is one or two-dimensional, while in Julia A, size (A) will return only one dimension if A has only one dimension. How can I do the same thing as in Matlab in Julia, namely, extracting the dimension of A, if A is a vector, in a vector [n m]. Please, take into account that the dimensions of A might vary, i.e. it could have sometimes 1 and sometimes 2 dimensions.

Original source