conversion of 2d array in to vector

27 visualizzazioni (ultimi 30 giorni)
PANDIAN` NITHYANANDAM
PANDIAN` NITHYANANDAM il 20 Lug 2012
Commentato: Anu il 9 Ott 2014
hai matlab users
i have a 2d array double matrix ; i would like to convert it to vector.
2d array to vector.
since dec2bin not working on arrays; i would like to convert the array in to vector. can any one say, how to convert a 2d array into a vector with an example or the command to do that
  1 Commento
PANDIAN` NITHYANANDAM
PANDIAN` NITHYANANDAM il 20 Lug 2012
thanks sir,
but how to convert 2d double array into a vector.

Accedi per commentare.

Risposta accettata

Jan
Jan il 20 Lug 2012
Modificato: Jan il 20 Lug 2012
Several methods:
X = rand(10, 20);
V1 = X(:);
V2 = reshape(X, 1, []);
V3 = reshape(X, numel(X), 1);

Più risposte (1)

Hanoh Beizer
Hanoh Beizer il 20 Lug 2014
Modificato: Hanoh Beizer il 20 Lug 2014
That's what I did with my picture:
sz=size(pic);
num=sz(1)*sz(2);
pic_vec=zeros(num);
count=1;
for i=1:sz(1)
for j=1:sz(2)
pic_vec(count)=pic(i,j);
count=count+1;
end
end
  2 Commenti
Jan
Jan il 2 Ago 2014
zeros(num) creates a num*num matrix. I assume you mean zeros(num, 1). Anyway, the loopless pic_vec=pic(:) is much faster.
Anu
Anu il 9 Ott 2014
HERE IS THE CODE IN MATLAB TO CONVERT 2D MATRIX TO A VECTOR:
sz=size(pic);
num=sz(1)*sz(2);
pic_vec=zeros(1,num);
for i=1:sz(1)
for j=1:sz(2)
pic_vec(1,(i-1)*sz(2)+j)=pic(i,j)
end
end

Accedi per commentare.

Categorie

Scopri di più su Data Type Conversion in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by