Está en la página 1de 11

“SUMATIVA 6.

2 SOLEMNE 3 PARTE 2”

RICARDO VARGAS ENCINA

PROFESOR: GERARDO ÁLVAREZ GARCÍA

ASIGNATURA: TALLER DE MÉTODOS CUANTITATIVOS


CARRERA: INGENIERIA CIVIL 2023
I. Desarrollo del trabajo

a) Determinar el modelo de regresión lineal que permita entender la relación entre


la variable PIB_per_cápita y las variables regresoras Mortalidad_Infantil,
Tasa_Alfabetismo_Femenino y Tasa_de_fecundidad

1
2
3
4
Para la obtención del modelo de regresión lineal se importa archivo Excel en Colab y se
comienzan las pruebas para validar el archivo, estas van desde la verificación de filas y
columnas, títulos de variables y verificación gráfica de cruce de información entre ellas.
Posteriormente se crea el modelo para la obtención de los datos de la regresión lineal.

b) Determina y concluye sobre los estadísticos globales del modelo.

1. En el modelo se logra apreciar que la significancia F es de 0.0125 siendo menor a un 0,05


por lo tanto el modelo es bueno para explicar la variable dependiente de PIB per Capita.
2. La R-Cuadrada es de 0.164 lo cual indica que el modelo explica el 16.4% de la varianza
de la variable dependiente. Es baja pero no es nula, representando por debajo de un
quinto la justificación del PIB per capita es explicado por este conjunto de variables
independientes.

5
6
c) Determina y concluye sobre los estadísticos individuales del modelo.

1. La variable Mortalidad_Infantil si explica la justificación de los valores del


PIB_per_Capita ya que la significancia es menor a 0,05. En cambio, las variables
Tasa_Alfabetismo_Femenino y Tasa_fecundidad no se relacionan con la variación del PIB per
cápita ya que su significancia es mayor a 0,05.
(Esto se debe a que se calcula directamente por la población existente y no por los
estados de la población)

7
Código.
0s
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import statsmodels.formula.api as smf
import statsmodels.api as sm
import scipy.stats as ss

[33]
0s
df = pd.read_excel('solemne_forma_1.xlsx')

[34]
df.shape

[35]
df.columns

[36]
df.isnull().sum()

[37]
df.describe()

[38]
sns.boxplot(data = df)

[39]
pd.plotting.scatter_matrix(df);

[40]
sns.heatmap(df.corr(), cmap = 'Blues', annot = True)

[41]
sns.pairplot(data = df)

[51]
0s
modelo = smf.ols('PIB_per_capita ~ Mortalidad_Infantil + Tasa_Alfabetismo_Femenino + Tasa_fecundi
dad', data =df).fit()

[52]
print(modelo.summary())

8
[46]
sns.regplot(x=modelo.predict(), y =df['PIB_per_capita'], lowess =True, line_kws={'color':'red'})
plt.title('Pronósticos vs Observados')
plt.xlabel ('Pronósticos')
plt.ylabel ('Observados')

Se aprecian datos atípicos que distorsionan la interpretación de la linealidad del


modelo, pero sin considerar esos, en la parte inferior se ven que los datos tienden
a subir pero con una curva de gran consideración. Se puede suponer realizar el
modelo por bloques para analizar mejor los datos obtenidos

[47]
sm.qqplot(modelo.resid, line = 's')

Al observar los residuos no se comportan de forma normal, viendo que los puntos
azules se alejan de la linea roja. Tenemos muchos datos atípicos y se están
establaciendo reglas para datos que son atípicos. Se debieron separar los datos
atipicos para poder verificar el nivel de dispersión.

[53]
ss.shapiro(modelo.resid)

Como el pvalue es cercano a 0 se decide rechazar la hipótesis nula por la hipótesis


alternativa en el cual los residuos no distribuyen normal.

[49]
sns.regplot(x = modelo.predict(), y = modelo.resid, lowess= True, line_kws = {'color':'red'})
plt.xlabel('Pronósticos')
plt.ylabel('Residuos')
plt.title('Pronósticos vs Residuos')

En el gráfico se nota que no hay homcedasticidad de los datos, es decir que la


dispersión de los datos residuales del módelo son constante.

[50]
0s
sm.stats.diagnostic.het_breuschpagan(modelo.resid, modelo.model.exog)
(5.19963089450858, 0.15774939226370516, 1.768570835050415, 0.16280871008235112)

Dado que tenemos un pvalue cercano a 0, se decide rechazar la hipótesis nula que
dice que los residuos se comportan de forma homocedástica

9
10

También podría gustarte