Asignatura: Econometría
Grupo Teórico: 3
Osvaldo Enrique Roche Romero
Carné: RR18105

FastGraph, Qué es y Funciones

Es una herramienta para graficar áreas bajo la curva de distribuciones de probabilidad. Más especificamente con FastGraph se pueden graficar datos en densidad de probabilidades y acumulaciones de las mismas. Una de las principales características es que puede sombrear el área bajo la curva de cualquier función de probabilidad.

La librería trae cinco funciones que se denotan a continuación:

1. getMinMax: Sirve para determinar un valor a graficar.

2. plotDist: Es funcional para graficar hasta tres funciones de densidad poblacional en un mismo Gráfico.

3. plotLine: Sirve para la regresión Lineal, establece su línea y muestra la ecuación de regresión.

4. ShadeDist: Dibuja la función de desnidad de probabilidad, sobrea el área bajo la curva y enumera la probabilidad en el titulo del gráfico, aunque tambien es posible cambiar el titulo manualmente, pero desaparece la probabilidad.

5. ShadePhat: Esta es similar a ShadeDist, aunque solo determina proporciones muestrales.

En este caso las funciones más importantes a utilizar son ShadeDist y en menor medida plotLine. En la primera nos enfocamos para ejemplificar.

1. Ejemplos de Distribuciones y Gráficas en FastGraph

En primer lugar cargo los datos, para este caso utilizare la base de datos de state.x77, los cuales muestras la esperanza de vida de los habitantes de una determinada ciudad:

library(dplyr)
datos <- as.data.frame(state.x77)
datos <- rename(habitantes = Population, analfabetismo = Illiteracy,
                ingresos = Income, esp_vida = `Life Exp`, asesinatos = Murder,
                universitarios = `HS Grad`, heladas = Frost, area = Area,
                .data = datos)

Teniendo ya los datos podemos comenzar:

2. Función ShadeDist

La función SahadeDist es la que más nos interesa en los estudios de regresión lineal multiple por eso la ocuparemos en este momento. Empezamos por generar las funciones correspondientes:

Modelo_Uno <- lm(formula = esp_vida ~ habitantes + ingresos, data = datos)

2.1. Distribución Z

library(fastGraph)
## Warning: package 'fastGraph' was built under R version 4.0.5
shadeDist(qnorm ( 0.975 ),  lower.tail = F, col = c("blue", "red"))

2.2. Distribución t

options(scipen = 99999)

#crear matriz de coef. desv. p_value

Coef_modelo<-summary(Modelo_Uno)$coefficients
t_values<-Coef_modelo[,"t value"]
etiquetas<-names(t_values)

#Gráficas Pruebas t 

for(j in 2:3){
  tc<-t_values[j]
  t_VC<-
  shadeDist( c(-tc, tc ), "dt", 13,col=c("blue","red"),sub=paste("Parámetro de la Variable:",etiquetas[j]))
  print(confint(Modelo_Uno,parm = j,level = 0.95))
}

##                    2.5 %        97.5 %
## habitantes -0.0001275133 0.00004019627

##                 2.5 %     97.5 %
## ingresos 0.0002001301 0.00141864

2.3. Distribución F

F_Anova <- summary(Modelo_Uno)$fstatistic[1]
gl_num <- summary(Modelo_Uno)$fstatistic[2]
gl_den <- summary(Modelo_Uno)$fstatistic[3]
F_VC <- qf(0.95,gl_num,gl_den,lower.tail = TRUE)
shadeDist(xshade = F_Anova,"df",gl_num,gl_den,lower.tail = FALSE, col=c("blue","red"),
          sub=paste("VC:",F_VC," ","Fc:",F_Anova))

El P value para la Distribución t

p_t <- pchisq(F_Anova,gl_num,gl_den, lower.tail = F)
print(p_t)
##     value 
## 0.9999998

2.4. Distribución \(X^2\)

shadeDist(qchisq(0.05,30,lower.tail = FALSE),ddist = 'dchisq',parm1 = 25,lower.tail = FALSE, col = c("blue", "red"))

shadeDist(23,ddist = 'dchisq',parm1 = 30,lower.tail = FALSE,
          col=c('blue','red'),
          sub=paste(c(qchisq(0.05,25,lower.tail = FALSE))))

3 Función Adicional PlotLine

Una funcion muy interesante en algunos analisis fuera de la regresión múltiple es la regresión simple y para un brebe ejemplo utilizamos la función PlotLine. De esta manera se genera un modelo de regresión lineal simple.

library(fastGraph)
y <- datos$esp_vida
x <- datos$ingresos
plotLine(y ~ x, data = datos, pch = 19)