What is my solution?

top2=0;top3=0;
mij=ones(5,5);
mi=ones(1,5);
X=[242 183 237 141 125;157 181 268 232 220;219 185 151 261 120;331 151 239 203 206;138 213 222 174 189];
Xort=mean(X); %mean for rows
for i=1:5
n(i)=length(X);
end
for i=1:5
for j=1:5
top2=top2+(mij(i,j)*(X(i,j)-Xort(i))^2) %top is in english sum. share % fraction for v
end
top3=top3+(n(i)-1); % denominator of v fraction
end
v=top2/top3;% v is the estimate which i want to calculate
v
İn this program, result is v =3.6694e+003 but it is wrong.in for loop only i=1 and j=1 works correctly. if i=1 j=2, results are bad. Can you help me?

11 comentarios

Thomas
Thomas el 6 de Dic. de 2012
What results do you expect?
eren eren
eren eren el 6 de Dic. de 2012
i expect around 3500
Sean de Wolski
Sean de Wolski el 6 de Dic. de 2012
Well 3669.4 isn't that far away. Are you sure it's wrong?
Walter Roberson
Walter Roberson el 6 de Dic. de 2012
To check: you are aware that mean(X) is mean(X,1) which is to say mean down the columns? mean(X,2) would be across the rows. Checking to see if you intend rows or columns ?
Image Analyst
Image Analyst el 6 de Dic. de 2012
Can you tell us in words, or can you put in some English comments that say what this does? What is the overall goal of this? What do top2 and top3 and their ratio represent? Maybe there's a simpler way, like using conv2() or something. Also, do you know that length(X) for a 2 D array is the length of the longest dimension (not the number of elements, which is numel(), or the width or height of the array)? I think it's rare to see length() used on a 2D array.
eren eren
eren eren el 7 de Dic. de 2012
i expect around 3500 but not e+003. Can i get rid of e+.
for x(1,1), it returns right result but for x(1,2) and after it returns e+ value. i don't want this.
i edited my first message and added some comments.
Walter Roberson
Walter Roberson el 7 de Dic. de 2012
Give the command
format long g
and then display the result
eren eren
eren eren el 7 de Dic. de 2012
Please be more specific. where do i give format long g command ???
Matt Fig
Matt Fig el 7 de Dic. de 2012
At the command line
>> format long g % Now hit Return or Enter
eren eren
eren eren el 8 de Dic. de 2012
Thanks Walter Roberson. This is working. do i use it every time or is it only one?
Walter Roberson
Walter Roberson el 8 de Dic. de 2012
Have it once in your program.

Respuestas (0)

La pregunta está cerrada.

Etiquetas

Preguntada:

el 6 de Dic. de 2012

Cerrada:

el 20 de Ag. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by