Hello all! I have some ambiguity with MATLAB. I saved my matrix as A(:,:,1) in workspace. Now I want to access column or some entries of my big matrix on command window.

1 visualización (últimos 30 días)
I have the following loop.
for i=1:4
A(:,:,i)=i*ones(4,4);
end
Now I want second rows of A(:,:,i) i.e second row of A(:,:,1), second row of A(:,:,2), second row of A(:,:,3) and second row of A(:,:,4).

Respuesta aceptada

Wan Ji
Wan Ji el 23 de Ag. de 2021
Do by following code
for i=1:4
A(:,:,i)=i*ones(4,4);
end
B = permute(A,[3,2,1]);
B(:,:,2)
The result is
ans =
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
  3 comentarios
dpb
dpb el 23 de Ag. de 2021
"I just want to have 2nd row of A(:,:,2) only on my comand window" @Teshome Kumsa
Well, that's just
B=A(2,:,2);
Wan Ji
Wan Ji el 23 de Ag. de 2021
Hi, Teshome Kumsa,
Follow pdb's answer. And transpose it.
B=squeeze(A(2,:,:))'; % B is what you want
Also without using squeeze, you can achieve it by
B = reshape(A(2,:,:), size(A,2), size(A,3))';

Iniciar sesión para comentar.

Más respuestas (1)

dpb
dpb el 23 de Ag. de 2021
B=squeeze(A(2,:,:));

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by