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 vue (au cours des 30 derniers jours)
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).

Réponse acceptée

Wan Ji
Wan Ji le 23 Août 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 commentaires
dpb
dpb le 23 Août 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 le 23 Août 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))';

Connectez-vous pour commenter.

Plus de réponses (1)

dpb
dpb le 23 Août 2021
B=squeeze(A(2,:,:));

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by