Matlab - metodos numericos minimos cuadrados

 
Vista:
sin imagen de perfil
Val: 1
Ha aumentado su posición en 9 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

metodos numericos minimos cuadrados

Publicado por alvaro (2 intervenciones) el 24/10/2018 01:47:02
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
function [m,b]=mincuadlin(x)
n=length(x(1,:));
A=0;
B=0;
C=0;
D=0;
 
 
for i=1:n
    A=A+x(1,i);
    B=B+x(2,i);
    C=C+(x(1,i))^2;
    D=D+X(1,i)*x(2,i);
end
 
 
m=(n*D-A*B)/(n*C-A^2);
b=(C*B-D*A)/(n*C-A^2);
 
 
for i=1:n
    hold on;
    plot (X(1,i),X(2,i),'*','MarkerEdgeColor','r','LineWidth',1);
end
 
 
x=X(1,1):1:X(1,n);
y=m*x+b;
plot(x,y,'b');
title('Aproximación lineal por mínimos cuadrados.');


este codigo no me corre y me aparecen los siguientes errores

1
n=length(x(1,:));

y tambien en el ciclo for agradeceria que me ayudaran gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

metodos numericos minimos cuadrados

Publicado por JOSE JEREMIAS CABALLERO (5867 intervenciones) el 24/10/2018 01:59:40
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function [m,b]=mincuadlin(x)
n=length(x(1,:));
A=0;
B=0;
C=0;
D=0;
 
 
for i=1:n
A=A+x(1,i);
B=B+x(2,i);
C=C+(x(1,i))^2;
D=D+x(1,i)*x(2,i);
end
 
 
m=(n*D-A*B)/(n*C-A^2);
b=(C*B-D*A)/(n*C-A^2);
 
 
for i=1:n
hold on;
plot (x(1,i),x(2,i),'*','MarkerEdgeColor','r','LineWidth',1);
end
 
 
X=x(1,1):1:x(1,n);
y=m*X+b;
plot(X,y,'b');
title('Aproximación lineal por mínimos cuadrados.');
end

1
2
3
4
5
6
7
8
9
10
>> x=rand(2,10); [m,b]=mincuadlin(x)
 
m =
 
    0.8200
 
 
b =
 
    0.0341



Saludos
JOSE JEREMÍAS CABALLERO
Asesoria online en Matlab
Servicios de programación matlab


http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

metodos numericos minimos cuadrados

Publicado por alvaro mantilla (2 intervenciones) el 24/10/2018 03:44:32
me sigue saliendo el error

Error in mincuadlin (line 2)
n=length(x(1,:));
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

metodos numericos minimos cuadrados

Publicado por JOSE JEREMIAS CABALLERO (5867 intervenciones) el 24/10/2018 03:49:39
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
>> x=rand(2,10), [m,b]=mincuadlin(x)
 
x =
 
    0.6557    0.8491    0.6787    0.7431    0.6555    0.7060    0.2769    0.0971    0.6948    0.9502
    0.0357    0.9340    0.7577    0.3922    0.1712    0.0318    0.0462    0.8235    0.3171    0.0344
 
 
m =
 
   -0.2262
 
 
b =
 
    0.4970
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar