Beruflich Dokumente
Kultur Dokumente
Reporte N° 3
13 de noviembre de 2017
1. Resumen
2. Introducción
Para el conjunto de puntos que define un comportamiento lineal, se espera que la recta de
mejor ajuste cumpla con la condición de que esta, pase por el centro de gravedad ( x̄, ȳ) que
no son mas que las medias aritméticas de todos los datos. Es por ello que dado un conjunto
de parejas de datos representados por las variables dependiente y e independiente x, que
definen una relación lineal, la ecuación general de la recta que las relaciona y representa es
1
un polinomio de grado uno, con ordenada al origen a0 y pendiente a1 , es decir:
y = a0 + a1 .x
Donde luego de una serie de operaciones de cálculo se obtiene que el valor de, a0 se puede
hallar a través de:
∑n x2 ∑n 1 yi − ∑in=1 xi ∑in=1 xi .yi
a 0 = i =1 i i =
n. ∑in=1 xi2 − (∑in=1 xi )2
Y así mismo el valor de a1 mediante:
3. Desarrollo
A través del software Code :: blocks además del conocimiento teórico adquirido anterior-
mente es posible desarrollar un código que satisface el objetivo planteado:
Pseudocódigo 1.
using namespace s t d ;
i n t main ( )
{
int n ;
cout << " I n g r e s e e l v a l o r de n coordenadas : " <<endl ;
c i n >> n ;
double coordenadas_x [ n ] ;
double coordenadas_y [ n ] ;
f o r ( i n t i = 1 ; i <=n ; i ++)
{
cout << " x " << i << " = " ;
c i n >> coordenadas_x [ i ] ;
cout << " y " << i << " = " ;
c i n >> coordenadas_y [ i ] ;
}
/ / s u m a t o r i a d e x i ^2
double coordenadas_x2 [ n ] ;
f o r ( i n t i = 1 ; i <=n ; i ++)
{
coordenadas_x2 [ i ]= coordenadas_x [ i ] * coordenadas_x [ i ] ;
}
double sumatoria_x2 = 0 ;
f o r ( i n t i = 1 ; i <=n ; i ++)
2
{
sumatoria_x2=sumatoria_x2+coordenadas_x2 [ i ] ;
}
/ / sumatoria de y i
double sumatoria_y = 0 ;
f o r ( i n t i = 1 ; i <=n ; i ++)
{
sumatoria_y=sumatoria_y+coordenadas_y [ i ] ;
}
/ / sumatoria de x i
double sumatoria_x = 0 ;
f o r ( i n t i = 1 ; i <=n ; i ++)
{
sumatoria_x=sumatoria_x+coordenadas_x [ i ] ;
}
double sumatoria_xy = 0 ;
f o r ( i n t i = 1 ; i <=n ; i ++)
{
sumatoria_xy=sumatoria_xy+coordenadas_xy [ i ] ;
}
double a0 , a1 ;
cout << " El modelo de r e g r e s i o n l i n e a l para l o s n = " <<n<< " puntos dados es : "
<<endl ;
cout << " y = " <<a0<< " + " <<a1<< " x " <<endl ;
return 0 ;
}
En este programa fue necesario el uso de arreglos y la función f or. El código está dado
para que el usuario ingrese el número n de puntos de los cuales desea el modelo de regresión
lineal, posteriormente se le pedirá que ingrese las coordenadas ( xi , yi ) de cada punto, es por
ello que como primer paso se declara la variable n tipo int, esta se usará como tamaño de
los arreglos siendo una variable entera por la misma razón. Luego se declaran dos arreglos,
uno para las coordenadas x y el otro para las coordenada y, estos son tipo double para que el
3
usuario tenga la libertad de ingresar coordenadas tanto enteras como decimales. El primer
lazo f or expuesto en el código describe este procedimiento es decir el ingreso de datos.
Como el interés vital del programa es encontrar los valores de las constantes a0 y a1 del
modelo, simplemente mediante lazos f or se hallan los elementos necesarios para después
reemplazarlos en las fórmulas anteriormente citadas. Los elementos que se obtendrán son:
n n n n
∑ xi2 , ∑ yi , ∑ xi , ∑ xi yi
i =1 i =1 i =1 i =1
Finalmente se declaran dos variables tipo double, estas son las constantes a0 y a1 presen-
tes en el modelo. Se definen sus ecuaciones, se reemplazan valores y se imprime el resultado
de acuerdo a los datos de entrada.
4. Resultados
Para evidenciar la veracidad del modelo generado por el pseudocódigo anterior, se in-
gresará el siguiente ejemplo:
4
Figura 2: El modelo de regresión lineal que imprime el programa según los puntos dados
del ejemplo.
EL programa imprime el modelo de regresión lineal buscado, para n puntos, en este caso 5.
Cuyo resultado mostrado es:
y = 0, 117665 + 0,0960914.x
T = 0, 117665 + 0,0960914.Θ
5. Conclusiones
La regresión es diferente a la interpolación, debido a que la segunda crea una fun-
ción que pasa exactamente por los puntos dados, mientras que la regresión define una
función que tiene un mejor ajuste para un determinado set de puntos.
Existen diferentes tipos de regresiones que se utilizan según las condiciones y peticio-
nes del problema a resolver, como: lineales, exponeciales, logarítmicas y demás. Este
reporte se basó solo en las regresiones lineales.
El método de mínimos cuadrados determina que los valores de a0 y a1 son los que
minimizan la suma del cuadrado de las diferencias. Cualquier otro valor para a0 y a1
diferente a quellos que se hayan determinado por el método, da como resultado una
mayor suma del cuadrado de las diferencias y por tanto un modelo menos efectivo.
5
El uso de software para la obtención de modelos matemáticos como la regresión lineal
es imprescindible si se busca eficiencia y optimización de tiempo.
6. Recomendaciones
El conocimiento previo de los conceptos básicos estadísticos tal como: la media, la
desviación estándar, el rango, etc.; es importante para el entedimiento de modelos de
regresión lineal y por ende la obtención de un código que lo describa.
Para una regresión, es necesario tener conciencia del tipo de datos usados, puesto que
se puede tener una mala identificación de la causa.
7. Bibliografía
CAMPOS, D.F., (2003), Introducción a los métodos numéricos : Software en Basic y aplicacio-
nes en Hidrología Superficial, San Luis Potosí, México: Editorial Universitaria Potosina.