Simple Matrix operation using for loop
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Nikhil
el 3 de Oct. de 2013
Comentada: Azzi Abdelmalek
el 3 de Oct. de 2013
Hello all, I want to do following matrix operation, I have two matrices y and errorsample as: y=y=[0.53, 0.6, 0.58, 0.68, 0.85, 0.85];1X6 matrix errorsample=normrnd(0,stdev,1,1e4);1X1e4 matrix
Now I want to create new matrix Y (1e4X6) such that Y(i)(j)=y(j)-errorsample(i)
For that I have written following code: y=[0.53, 0.6, 0.58, 0.68, 0.85, 0.85]; stdev=0.0523; errorsample=normrnd(0,stdev,1,1e4); for i=1:1:1e4; for j=1:1:6; Y(i)(j)=y(j)-errorsample(i); end end
but after running this, I am getting following error: ??? Error: File: Q4.m Line: 23 Column: 5 ()-indexing must appear last in an index expression.
Can anybody please tell me how to debug this problem, It's urgent Thanks in advance,
Nikhil
0 comentarios
Respuesta aceptada
Azzi Abdelmalek
el 3 de Oct. de 2013
Editada: Azzi Abdelmalek
el 3 de Oct. de 2013
Maybe you want
y=[0.53, 0.6, 0.58, 0.68, 0.85, 0.85];
stdev=0.0523;
errorsample=normrnd(0,stdev,1,1e4);
out=zeros(1e4,6);
for i=1:1:1e4;
for j=1:1:6;
out(i,j)=y(j)-errorsample(i);
end
end
disp(out)
2 comentarios
Azzi Abdelmalek
el 3 de Oct. de 2013
y=[0.53, 0.6, 0.58, 0.68, 0.85, 0.85];
stdev=0.0523;
errorsample=normrnd(0,stdev,1,1e4);
Y=zeros(1e4,6);
for i=1:1:1e4;
for j=1:1:6;
Y(i,j)=y(j)-errorsample(i);
end
end
x=[0,0.2, 0.4, 0.6, 0.8, 1.0];
xx= [ones(6,1),x'];
Z=zeros(1e4,2);
for i=1:1:1e4;
b=regress(Y(i,:)',xx);
Z(i,:)=b';
end
Más respuestas (0)
Ver también
Categorías
Más información sobre Multidimensional Arrays en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!