How to make empty array of specific size?
898 views (last 30 days)
Show older comments
a=ClassName.empty(2,2)
but I got this error:
Undefined variable "ClassName" or class "ClassName.empty".
2 Comments
Answers (4)
Steven Lord
on 14 Oct 2019
Replace ClassName with the name of the class for which you want to create the empty array.
But in order to use the empty method, the size of the array you want to create must be 0 in at least one of its dimensions. You can't, for example, have a 2-by-2 empty array. If you want to make a double 2-by-2 array, use zeros, ones, rand, eye, etc.
x = zeros(2); % 2-by-2 double array filled with 0's
y = ones(2, 'single'); % 2-by-2 single array filled with 1's
z = int8.empty(2, 2, 0) % 2-by-2-by-0 int8 array
2 Comments
Steven Lord
on 14 Oct 2019
If the array has at least one element, those elements must have a value. Let's say you created your "empty" 2-by-2 matrix a. What specifically do you want the value of q to be after running the following line of code?
q = a(1, 1);
Linnéa Haugen
on 9 Apr 2023
Edited: Linnéa Haugen
on 9 Apr 2023
I found another solution that starts out empty. i also wanted to create an empty array, with 2 columns but of unknown length.
arr = [[], []];
if ..
else
arr(end+1,1) = a;
end
if..
arr(end,2) = b;
end
a and b are changing in a for loop and i only need to save some values. i'm finding peaks and if i find one i save to location (a) and change the hight by the amount (b).
I only have an interest in the values i change, and i don't know how many i'll change in advance.
0 Comments
See Also
Categories
Find more on Matrices and Arrays in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!