3 plane to array vectorization

I have data in a matrix Atr
>> whos Atr
Name Size Bytes Class Attributes
Atr 7x3x2500 420000 double
I want to extract Atr(1,1,:) into a row vector Q. I tried like this
>>Q=Atr(1,1,:);
>> whos Q
Name Size Bytes Class Attributes
Q 1x1x2500 20000 double
But I need to store in a signle rwo vector . And also tried in this way
for i=1:2500
Q(i)=Atr(1,1,i);
end
>> whos Q
Name Size Bytes Class Attributes
Q 1x1x2500 20000 double
But no help. How can I store in a single row vector ?

 Réponse acceptée

Grzegorz Knor
Grzegorz Knor le 7 Sep 2011

0 votes

doc squeeze
Q=squeeze(Atr(1,1,:));

2 commentaires

Grzegorz Knor
Grzegorz Knor le 7 Sep 2011
Another possibility:
Q = Atr (1,1,:);
Q = Q (:);
Raviteja
Raviteja le 7 Sep 2011
these are not working...
Above squeeze working....

Connectez-vous pour commenter.

Plus de réponses (1)

Andrei Bobrov
Andrei Bobrov le 7 Sep 2011

0 votes

Q = reshape(Atr(1,1,:),1,[])
variant for all matrix Atr
n = size(Atr);
Qarray = reshape(Atr,n(1)*n(2),[]);

Catégories

En savoir plus sur Sparse Matrices dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by