Trabajo final

Carga y procesamiento de datos

Este bloque de código carga un archivo de datos en formato .sav y realiza una conversión inicial de una de sus columnas.

Función read_sav:

Proviene del paquete haven y se usa para leer archivos en formato SPSS (.sav), que es un formato común para datos estadísticos.

DATOS <- read_sav("C:/Users/johan/Downloads/EDIT_X_2019_2020/DATOS.sav")

DATOS$V121_num <- as.numeric(as.character(DATOS$V121))
## Warning: NAs introducidos por coerción

Eliminar filas con NA

Se eliminan las filas donde el vector V121_num tiene valores faltantes (NA). Para poder eliminarlos, se necesita la función is.na, la cual se divide en tres secciones:

Función is.na:

Esta función se divide en tres partes:

DATOS <- DATOS[!is.na(DATOS$V121_num), ]

Asegurarse de que V120 y V121_num sean numéricos

Se asegura que las columnas V120 y V121_num sean de tipo numérico, y se visualizan en un gráfico de dispersión.

Conversión:

La función as.numeric convierte los valores de las columnas a tipo numérico, esencial para análisis posteriores.

DATOS$V120 <- as.numeric(DATOS$V120)

DATOS$V121_num <- as.numeric(DATOS$V121_num)

plot(DATOS$V120, DATOS$V121_num, 
     xlab = "Monto invertido 2019 (lll1R1C1)", 
     ylab = "Monto invertido 2020 (lll1R1C2)")

Verificar que V120 y V121_num son numéricos

Se imprime la verificación de que ambas columnas son numéricas.

Función is.numeric:

Comprueba si las columnas son numéricas, y print muestra el resultado de esta verificación.

print(is.numeric(DATOS$V120))
## [1] TRUE
print(is.numeric(DATOS$V121_num))
## [1] TRUE

Test de correlación

Se realiza un test de correlación entre V120 y V121_num para determinar la fuerza y dirección de la relación entre ellas.

Función cor.test:

Realiza el test de correlación y devuelve un objeto con los resultados, incluyendo el coeficiente de correlación y el valor p.

cor_result <- cor.test(DATOS$V120, DATOS$V121_num)

print(cor_result)
## 
##  Pearson's product-moment correlation
## 
## data:  DATOS$V120 and DATOS$V121_num
## t = 77.761, df = 1976, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.8568734 0.8786159
## sample estimates:
##       cor 
## 0.8681606

Crear y resumir el modelo de regresión lineal

Se ajusta un modelo de regresión lineal utilizando V120 como variable dependiente y V121_num como variable independiente.

Función lm:

Función summary:

Modelo1 <- lm(V120 ~ V121_num, data = DATOS)

print(summary(Modelo1))
## 
## Call:
## lm(formula = V120 ~ V121_num, data = DATOS)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -10628237   -124440    -90552    -71814  35943005 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 9.055e+04  4.500e+04   2.012   0.0443 *  
## V121_num    1.056e+00  1.358e-02  77.761   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1948000 on 1976 degrees of freedom
## Multiple R-squared:  0.7537, Adjusted R-squared:  0.7536 
## F-statistic:  6047 on 1 and 1976 DF,  p-value: < 2.2e-16

Análisis

Coeficiente de correlación de Pearson (cor): El coeficiente obtenido es r=0.868, lo cual indica una correlación positiva fuerte entre las variables V120 y V121_num. Es decir, a medida que una aumenta, la otra tiende a aumentar también. Intervalo de confianza del 95%: El intervalo va de 0.8568 a 0.8786. Esto sugiere que estamos muy seguros de que la verdadera correlación poblacional está dentro de este rango, con un nivel de confianza del 95%. Prueba de hipótesis: La hipótesis nula (H0) es que la correlación es igual a 0 (no hay relación). El valor p es extremadamente pequeño (<2.2×10^-16), lo que permite rechazar la hipótesis nula con alto nivel de confianza. En consecuencia, la relación entre las variables es estadísticamente significativa.

Intercepto (β0): Valor estimado: 9.055×10^4. Pendiente (β1):Valor estimado: 1.056 Significancia (p-valor):

Para ambos coeficientes (β0 e β1 ), los valores p son muy bajos. Esto indica que ambos coeficientes son estadísticamente significativos

(coeficiente de determinación):Aproximadamente el 75.37% de la variabilidad en V120 es explicada por V121_num, lo que sugiere un ajuste relativamente bueno.

Error estándar de los residuos: Aproximadamente 1,948,000

Estadístico F=6047, con un valor p extremadamente bajo

Imprimir coeficientes del modelo

Se imprimen los coeficientes estimados del modelo de regresión.

Acceso a coeficientes:

Modelo1$coefficients devuelve los coeficientes del modelo, que indican la relación entre las variables independientes y dependientes.

print(Modelo1$coefficients)
## (Intercept)    V121_num 
##   90552.363       1.056

##Agregar la línea de regresión al gráfico

Se crea nuevamente el gráfico de dispersión y se añade una línea de regresión.

Función abline:

Añade una línea de regresión al gráfico, utilizando los coeficientes del modelo. La línea se dibuja en color rojo (col=“red”).

plot(DATOS$V120, DATOS$V121_num, 
     xlab = "Monto invertido 2019 (lll1R1C1)", 
     ylab = "Monto invertido 2020 (lll1R1C2)")

abline(Modelo1, col="red")