How to create a 3D variable with the third dimension is 1

15 views (last 30 days)
I want to create a 3D variable with its third dimension is 1. However, functions such as zeros, ones and rand will ignore trailing dimensions with a size of 1.
So, if I try
A = zeros(100,100,1);
I would only have a 2D variable.
  1 Comment
Stephen23
Stephen23 on 27 Jun 2023
"I want to create a 3D variable with its third dimension is 1."
A = zeros(100,100);
size(A,3)
ans = 1
"I would only have a 2D variable."
All arrays implicitly have infinite trailing scalar dimensions.

Sign in to comment.

Answers (1)

Nikhil Baishkiyar
Nikhil Baishkiyar on 27 Jun 2023
Edited: Nikhil Baishkiyar on 27 Jun 2023
This question has been asked before. This is the link
But basically Arrays in MATLAB have an implied infinitely long series of trailing singleton dimensions. You can index into them with no problem.
a = rand(100,100);
a(50,35,1)
ans = 0.7191

Community Treasure Hunt

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

Start Hunting!