How can I make the vector output always a column vector?

2 visualizzazioni (ultimi 30 giorni)
I'm having trouble with a problem where I need the output vector to be a column vector always. The output sometimes provided as row vectors and in the iteration stops as vector dimensions are not the same. The algorithm stops after sometime when the output takes row vector. Please help me how to fix the out of a vector always as a column vector. here is one example.
$x{n+1}=z{n}$ is not predictable. it gives sometimes as a row vector and sometimes as a column vector. it supposed to finish all 2000 iterations, but it will give me error sometimes
N=100;
matrixSize=N;
x{1}=fix(randi([5,5],N,1));
W=fix(randi([2,2],N,1));
for n=1:200;
y{n}=x{n}+W;
for j=1:N;
if y{n}(j,:)<0;
z{n}(j,:)=100;
else
z{n}(j,:)=99;
end
x{n+1}=z{n};
end
end
  1 Commento
Bruno Luong
Bruno Luong il 26 Ott 2018
Your code has plenty of row vectors, and not column vectors.
a(j,:) % <- row
a(:,j) % <- column
Unless if you leave in a parallel universe than the rest of us.

Accedi per commentare.

Risposta accettata

madhan ravi
madhan ravi il 26 Ott 2018
N=100;
matrixSize=N;
x{1}=fix(randi([5,5],N,1));
W=fix(randi([2,2],N,1));
for n=1:200;
y{n}=x{n}'+W;
for j=1:N;
if y{n}(j,:)<0;
z{n}(j,:)=100;
else
z{n}(j,:)=99;
end
x{n+1}=z{n};
end
end
  2 Commenti
Dinoma Degefa
Dinoma Degefa il 26 Ott 2018
Dear Sir, here is my code. but not working. after going a few iterations it will stop as the outcome for q4{n,:}=RR{n,:} is a row vector. run it reputedly you will see.
N=100;
matrixSize=N;
x{1,:}=fix(randi([50,50],N,1));
x{2,:}=fix(randi([200,200],N,1));
for n=2:2000;
beta(n)=(1/3)-(1/(n+2));
WWW{n,:}=beta(n)*x{n,:}-beta(n)*x{n-1,:};
WW1{n,:}=x{n,:}+WWW{n,:};
AA=eye(N);
y{n,:}=AA*x{n,:};
R{n,:}=AA*WW1{n,:};
for j=1:N;
if norm(R{n,:}(j,:))<1;
RR{n,:}(j,:)=R{n,:}(j,:);
else if norm(R{n,:}(j,:))<=2 & norm(R{n,:}(j,:))>=1;
if R{n,:}(j,:)<0;
RR{n,:}(j,:)=-1;
else if R{n,:}(j,:)>0;
RR{n,:}(j,:)=1;
else RR{n,:}(j,:)=0;
end
end
else if R{n,:}(j,:)-1<0;
RR{n,:}(:,j)=-1;
else if R{n,:}(j,:)-1>0;
RR{n,:}(j,:)=y{n,:}(j,:)-1;
else RR{n,:}(j,:)=0;
end
end
end
end
end
q4{n,:}=RR{n,:};
x{n+1,:}= y{n,:}-RR{n,:}; %(I-proxg2)Ax(n)
end
toc;

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by