En esta sección se analizan las variables continuas del estudio a través del ajuste a diferentes modelos de distribuciones probabilísticas. El objetivo es identificar la distribución teórica que mejor representa el comportamiento de cada variable, permitiendo realizar inferencias estadísticas con mayor precisión. Se incluyen análisis exploratorios, representaciones gráficas y los test. Este enfoque proporciona una base sólida para la formulación de hipótesis, la estimación de parámetros y la predicción de comportamientos futuros.
Cargamos los datos:
setwd("C:/Users/Usuario/Documents/Trabajo Estadistica/PROYECTO/")
datos<-read.csv("database.csv",header = TRUE, sep = ",", dec = ".")
str(datos)
## 'data.frame': 38113 obs. of 81 variables:
## $ Vehicle.ID : int 26587 27705 26561 27681 27550 28426 27549 28425 27593 28455 ...
## $ Year : int 1984 1984 1984 1984 1984 1984 1984 1984 1984 1984 ...
## $ Make : chr "Alfa Romeo" "Alfa Romeo" "Alfa Romeo" "Alfa Romeo" ...
## $ Model : chr "GT V6 2.5" "GT V6 2.5" "Spider Veloce 2000" "Spider Veloce 2000" ...
## $ Class : chr "Minicompact Cars" "Minicompact Cars" "Two Seaters" "Two Seaters" ...
## $ Drive : chr "" "" "" "" ...
## $ Transmission : chr "Manual 5-Speed" "Manual 5-Speed" "Manual 5-Speed" "Manual 5-Speed" ...
## $ Transmission.Descriptor : chr "" "" "" "" ...
## $ Engine.Index : int 9001 9005 9002 9006 1830 1880 1831 1881 1524 1574 ...
## $ Engine.Descriptor : chr "(FFS)" "(FFS) CA model" "(FFS)" "(FFS) CA model" ...
## $ Engine.Cylinders : int 6 6 4 4 4 4 6 6 6 6 ...
## $ Engine.Displacement : num 2.5 2.5 2 2 2.5 2.5 4.2 4.2 4.2 4.2 ...
## $ Turbocharger : logi NA NA NA NA NA NA ...
## $ Supercharger : chr "" "" "" "" ...
## $ Fuel.Type : chr "Regular" "Regular" "Regular" "Regular" ...
## $ Fuel.Type.1 : chr "Regular Gasoline" "Regular Gasoline" "Regular Gasoline" "Regular Gasoline" ...
## $ Fuel.Type.2 : chr "" "" "" "" ...
## $ City.MPG..FT1. : int 17 17 18 18 18 18 13 13 15 15 ...
## $ Unrounded.City.MPG..FT1. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ City.MPG..FT2. : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Unrounded.City.MPG..FT2. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ City.Gasoline.Consumption..CD. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ City.Electricity.Consumption : num 0 0 0 0 0 0 0 0 0 0 ...
## $ City.Utility.Factor : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Highway.MPG..FT1. : int 24 24 25 25 17 17 13 13 20 19 ...
## $ Unrounded.Highway.MPG..FT1. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Highway.MPG..FT2. : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Unrounded.Highway.MPG..FT2. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Highway.Gasoline.Consumption..CD. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Highway.Electricity.Consumption : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Highway.Utility.Factor : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Unadjusted.City.MPG..FT1. : num 21 21 23 23 22 22 16 16 19 19 ...
## $ Unadjusted.Highway.MPG..FT1. : num 34 34 35 35 24 24 18 18 27 26 ...
## $ Unadjusted.City.MPG..FT2. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Unadjusted.Highway.MPG..FT2. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Combined.MPG..FT1. : int 20 20 21 21 17 17 13 13 17 17 ...
## $ Unrounded.Combined.MPG..FT1. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Combined.MPG..FT2. : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Unrounded.Combined.MPG..FT2. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Combined.Electricity.Consumption : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Combined.Gasoline.Consumption..CD. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Combined.Utility.Factor : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Annual.Fuel.Cost..FT1. : int 1750 1750 1650 1650 2050 2050 2700 2700 2050 2050 ...
## $ Annual.Fuel.Cost..FT2. : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Gas.Guzzler.Tax : chr "" "" "" "" ...
## $ Save.or.Spend..5.Year. : int -2000 -2000 -1500 -1500 -3500 -3500 -6750 -6750 -3500 -3500 ...
## $ Annual.Consumption.in.Barrels..FT1.: num 16.5 16.5 15.7 15.7 19.4 ...
## $ Annual.Consumption.in.Barrels..FT2.: num 0 0 0 0 0 0 0 0 0 0 ...
## $ Tailpipe.CO2..FT1. : int -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
## $ Tailpipe.CO2.in.Grams.Mile..FT1. : num 444 444 423 423 523 ...
## $ Tailpipe.CO2..FT2. : int -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
## $ Tailpipe.CO2.in.Grams.Mile..FT2. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Fuel.Economy.Score : int -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
## $ GHG.Score : int -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
## $ GHG.Score..Alt.Fuel. : int -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
## $ My.MPG.Data : chr "N" "N" "N" "N" ...
## $ X2D.Passenger.Volume : int 74 74 0 0 0 0 0 0 0 0 ...
## $ X2D.Luggage.Volume : int 7 7 0 0 0 0 0 0 0 0 ...
## $ X4D.Passenger.Volume : int 0 0 0 0 0 0 0 0 0 0 ...
## $ X4D.Luggage.Volume : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Hatchback.Passenger.Volume : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Hatchback.Luggage.Volume : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Start.Stop.Technology : chr "" "" "" "" ...
## $ Alternative.Fuel.Technology : chr "" "" "" "" ...
## $ Electric.Motor : chr "" "" "" "" ...
## $ Manufacturer.Code : chr "" "" "" "" ...
## $ Gasoline.Electricity.Blended..CD. : chr "False" "False" "False" "False" ...
## $ Vehicle.Charger : chr "" "" "" "" ...
## $ Alternate.Charger : chr "" "" "" "" ...
## $ Hours.to.Charge..120V. : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Hours.to.Charge..240V. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Hours.to.Charge..AC.240V. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Composite.City.MPG : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Composite.Highway.MPG : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Composite.Combined.MPG : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Range..FT1. : int 0 0 0 0 0 0 0 0 0 0 ...
## $ City.Range..FT1. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Highway.Range..FT1. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Range..FT2. : chr "" "" "" "" ...
## $ City.Range..FT2. : num 0 0 0 0 0 0 0 0 0 0 ...
## $ Highway.Range..FT2. : num 0 0 0 0 0 0 0 0 0 0 ...
Empezamos el desarrollo para cada variable continua:
Desmotor <- datos$Engine.Index
Desmotor <- as.numeric(datos$Engine.Index)
Desmotor <- Desmotor[!is.na(Desmotor) & Desmotor != -1]
Desmotor <- Desmotor[Desmotor > 0]
hist(Desmotor)
## [1] 13143.05
## [1] 20375.25
HistogramaDesmotor <- hist(Desmotor, freq=FALSE,
main="Gráfica No.1: Histograma
de Desplazamiento Motor con Curva Normal",
xlab="Desplazamiento Motor",
ylab="Densidad",
col="lightgreen")
x <- seq(min(Desmotor), max(Desmotor), 0.01)
curve(dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2, add = TRUE)
# Área bajo la curva del histograma
Altura <- HistogramaDesmotor$density
Area <- sum(Altura * diff(HistogramaDesmotor$breaks))
Area
## [1] 1
## [1] 25517
## [1] 18747 73 288 249 311 892 108 655 354 1022 302 1647
## [13] 454 415
Test:
## [1] 100
## [1] 0 5000 10000 15000 20000 25000 30000 35000 40000 45000 50000 55000
## [13] 60000 65000
## [1] 5000 10000 15000 20000 25000 30000 35000 40000 45000 50000 55000 60000
## [13] 65000 70000
# Frecuencias esperadas bajo normal
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], u, sigma) - pnorm(liminf[i], u, sigma)
}
FE <- P * length(Desmotor)
FE
## [1] 2175.53458 2398.53164 2490.59453 2435.78390 2243.63709 1946.45573
## [7] 1590.42943 1223.94547 887.13012 605.60564 389.37633 235.79026
## [13] 134.48025 72.23821
## [1] 147734.1
## [1] 19.67514
## [1] FALSE
Modelo Exponencial:
## [1] 7.608586e-05
# Histograma con curva exponencial
HistExp <- hist(Desmotor, freq=FALSE,
main="Gráfica No.2: Histograma
de Desplazamiento Motor con Curva Exponencial",
xlab="Desplazamiento Motor",
ylab="Densidad",
col="lightgreen")
# Añadimos curva exponencial
x <- seq(min(Desmotor), max(Desmotor), 0.01)
curve(dexp(x, rate = lambda), col = "red", lwd = 2, add = TRUE)
Test:
## [1] 0 5000 10000 15000 20000 25000 30000 35000 40000 45000 50000 55000
## [13] 60000 65000
## [1] 5000 10000 15000 20000 25000 30000 35000 40000 45000 50000 55000 60000
## [13] 65000 70000
# Frecuencias esperadas bajo la exponencial
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(Desmotor)
X2_exp <- sum((FO - FEexp)^2 / FEexp)
X2_exp
## [1] 51740.14
## [1] 21.02607
## [1] FALSE
mpg_ciudad <- as.numeric(datos$City.MPG..FT1.) # Asegúrate de que esta sea la columna correcta
mpg_ciudad <- mpg_ciudad[!is.na(mpg_ciudad) & mpg_ciudad != -1] # Limpieza de valores
hist(mpg_ciudad)
## [1] 17.98111
## [1] 6.849728
# Histograma con densidad
HistogramaMpg_ciudad <- hist(mpg_ciudad, freq = FALSE,
main = "Gráfica No.3: Histograma
de City MPG con Curva Normal",
xlab = "City MPG",
ylab = "Densidad",
col = "#FAEBD7")
x <- seq(min(mpg_ciudad), max(mpg_ciudad), 0.01)
curve(dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2, add = TRUE)
## [1] 1
## [1] 38113
## [1] 870 28465 7959 568 108 22 7 8 28 19 16 4
## [13] 31 7 1
Test:
## [1] 100
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], u, sigma) - pnorm(liminf[i], u, sigma)
}
FE <- P * length(mpg_ciudad)
FE
## [1] 4.483742e+03 1.882512e+04 1.312752e+04 1.486643e+03 2.483976e+01
## [6] 5.614414e-02 1.629035e-05 5.881636e-10 0.000000e+00 0.000000e+00
## [11] 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00
## [1] Inf
## [1] 21.02607
## [1] FALSE
Modelo Log-Normal:
mpg_ciudad <- as.numeric(datos$City.MPG..FT1.) # Ya está limpio
mpg_ciudad <- mpg_ciudad[!is.na(mpg_ciudad) & mpg_ciudad > 0]
log_mpg <- log(mpg_ciudad)
ulog <- mean(log_mpg)
ulog
## [1] 2.846708
## [1] 0.2732083
# Histograma log-normal
HistogramaLogNormal <- hist(mpg_ciudad, freq = FALSE,
main = "Gráfica No.4: Histograma
de City MPG con curva Log-Normal",
xlab = "City MPG",
ylab = "Densidad",
col = "#FAEBD7")
x <- seq(min(mpg_ciudad), max(mpg_ciudad), 0.01)
curve(dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(mpg_ciudad)
X2_log <- sum((FO - FElog)^2 / FElog)
X2_log
## [1] 71653593361
## [1] 21.02607
## [1] FALSE
# Limpieza de datos
MPGcity <- datos$Unrounded.City.MPG..FT1.
MPGcity <- MPGcity[!is.na(MPGcity) & MPGcity != "" & MPGcity != -1]
MPGcity <- as.numeric(MPGcity)
MPGcity <- MPGcity[MPGcity > 0]
u <- mean(MPGcity)
u
## [1] 20.77443
## [1] 11.20033
# Histograma con densidad
HistogramaNormal <- hist(MPGcity, freq = FALSE,
main = "Gráfica No.5: Histograma
de MPG Ciudad (FT1) con Curva Normal",
xlab = "MPG en Ciudad",
ylab = "Densidad",
col = "aquamarine")
x <- seq(min(MPGcity), max(MPGcity), 0.01)
curve(dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], u, sigma) - pnorm(liminf[i], u, sigma)
}
FE <- P * length(MPGcity)
valores_validos <- FE > 0
X2_normal <- sum(((FO[valores_validos] - FE[valores_validos])^2) / FE[valores_validos])
X2_normal
## [1] 1.234317e+13
## [1] 9
## [1] 16.91898
## [1] FALSE
Modelo Log-Normal:
## [1] 2.966193
## [1] 0.3237831
HistogramaLogNormal <- hist(MPGcity, freq = FALSE,
main = "Gráfica No.6: Histograma
de MPG Ciudad (FT1) con Curva Log-Normal",
xlab = "MPG en Ciudad",
ylab = "Densidad",
col = "aquamarine")
x <- seq(min(MPGcity), max(MPGcity), 0.01)
curve(dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(MPGcity)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 20233304
## [1] 12
## [1] 21.02607
## [1] FALSE
Modelo Exponencial:
## [1] 0.0481361
HistExp <- hist(MPGcity, freq=FALSE,
main="Gráfica No.7: Histograma
de MPG Ciudad (FT1) con Curva Exponencial",
xlab="MPG en Ciudad",
ylab="Densidad",
col="aquamarine")
x <- seq(min(MPGcity), max(MPGcity), 0.01)
curve(dexp(x, rate = lambda), col = "red", lwd = 2, add = TRUE)
Test:
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(MPGcity)
valores_validos_exp <- FEexp > 0
X2_exp <- sum((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2 / FEexp[valores_validos_exp])
X2_exp
## [1] 11626.9
## [1] 13
## [1] 22.36203
## [1] FALSE
# Limpieza de datos
mpg_ciudad2 <- datos$City.MPG..FT2.
mpg_ciudad2 <- mpg_ciudad2[!is.na(mpg_ciudad2) & mpg_ciudad2 != "" & mpg_ciudad2 != -1]
mpg_ciudad2 <- as.numeric(mpg_ciudad2)
mpg_ciudad2 <- mpg_ciudad2[mpg_ciudad2 > 0]
u <- mean(mpg_ciudad2)
u
## [1] 14.47705
## [1] 15.68556
# Histograma con densidad
HistogramaNormal <- hist(mpg_ciudad2, freq = FALSE,
main = "Gráfica No.8: Histograma
de MPG Ciudad (FT2) con Curva Normal",
xlab = "MPG en Ciudad (FT2)",
ylab = "Densidad",
col = "#F0FFFF")
x <- seq(min(mpg_ciudad2), max(mpg_ciudad2), 0.01)
curve(dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], u, sigma) - pnorm(liminf[i], u, sigma)
}
FE <- P * length(mpg_ciudad2)
valores_validos <- FE > 0
X2_normal <- sum(((FO[valores_validos] - FE[valores_validos])^2) / FE[valores_validos])
X2_normal
## [1] 1.254054e+12
## [1] 12
## [1] 21.02607
## [1] FALSE
Modelo Log-Normal:
## [1] 2.49527
## [1] 0.4494793
HistogramaLogNormal <- hist(mpg_ciudad2, freq = FALSE,
main = "Gráfica No.9: Histograma
de MPG Ciudad (FT2) con Curva Log-Normal",
xlab = "MPG en Ciudad (FT2)",
ylab = "Densidad",
col = "#F0FFFF")
x <- seq(min(mpg_ciudad2), max(mpg_ciudad2), 0.01)
curve(dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(mpg_ciudad2)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 247602
## [1] 12
## [1] 21.02607
## [1] FALSE
Modelo Exponencial:
## [1] 0.06907484
HistExp <- hist(mpg_ciudad2, freq=FALSE,
main="Gráfica No.10: Histograma
de MPG Ciudad (FT2) con Curva Exponencial",
xlab="MPG en Ciudad (FT2)",
ylab="Densidad",
col="#F0FFFF")
x <- seq(min(mpg_ciudad2), max(mpg_ciudad2), 0.01)
curve(dexp(x, rate = lambda), col = "red", lwd = 2, add = TRUE)
Test:
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(mpg_ciudad2)
valores_validos_exp <- FEexp > 0
X2_exp <- sum(((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2) / FEexp[valores_validos_exp])
X2_exp
## [1] 1076
## [1] 13
## [1] 22.36203
## [1] FALSE
# Limpieza de datos
MPGcity2 <- datos$Unrounded.City.MPG..FT2.
MPGcity2 <- MPGcity2[!is.na(MPGcity2) & MPGcity2 != "" & MPGcity2 != -1]
MPGcity2 <- as.numeric(MPGcity2)
MPGcity2 <- MPGcity2[MPGcity2 > 0]
u <- mean(MPGcity2)
u
## [1] 16.59429
## [1] 19.2699
# Histograma con densidad
HistogramaNormal <- hist(MPGcity2, freq = FALSE,
main = "Gráfica No.11: Histograma
de MPG Ciudad (FT2) con Curva Normal",
xlab = "MPG en Ciudad (FT2)",
ylab = "Densidad",
col = "#FFE4C4")
x <- seq(min(MPGcity2), max(MPGcity2), 0.01)
curve(dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], u, sigma) - pnorm(liminf[i], u, sigma)
}
FE <- P * length(MPGcity2)
valores_validos <- FE > 0
X2_normal <- sum(((FO[valores_validos] - FE[valores_validos])^2) / FE[valores_validos])
X2_normal
## [1] 15834894
## [1] 12
## [1] 21.02607
## [1] FALSE
Modelo Log-Normal:
## [1] 2.571681
## [1] 0.5345132
HistogramaLogNormal <- hist(MPGcity2, freq = FALSE,
main = "Gráfica No.12: Histograma
de MPG Ciudad (FT2) con Curva Log-Normal",
xlab = "MPG en Ciudad (FT2)",
ylab = "Densidad",
col = "#FFE4C4")
x <- seq(min(MPGcity2), max(MPGcity2), 0.01)
curve(dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(MPGcity2)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 7913.653
## [1] 12
## [1] 21.02607
## [1] FALSE
Modelo Exponencial:
## [1] 0.06026171
HistExp <- hist(MPGcity2, freq=FALSE,
main="Gráfica No.13: Histograma
de MPG Ciudad (FT2) con Curva Exponencial",
xlab="MPG en Ciudad (FT2)",
ylab="Densidad",
col="#F0FFFF")
x <- seq(min(MPGcity2), max(MPGcity2), 0.01)
curve(dexp(x, rate = lambda), col = "blue", lwd = 2, add = TRUE)
Test:
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(MPGcity2)
valores_validos_exp <- FEexp > 0
X2_exp <- sum(((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2) / FEexp[valores_validos_exp])
X2_exp
## [1] 1050.895
## [1] 13
## [1] 22.36203
## [1] FALSE
consumoMPG <- datos$City.Gasoline.Consumption..CD.
consumoMPG <- consumoMPG[!is.na(consumoMPG) & consumoMPG != "" & consumoMPG != -1]
consumoMPG <- as.numeric(consumoMPG)
consumoMPG <- consumoMPG[consumoMPG > 0]
lambda <- 1 / mean(consumoMPG)
lambda
## [1] 0.8495764
# Histograma con curva exponencial
HistExp <- hist(consumoMPG, freq=FALSE,
main="Gráfica No.8: Histograma
de Consumo de Gasolina en Ciudad con Curva Exponencial",
xlab="Consumo de Gasolina (CD)",
ylab="Densidad",
col="#0000FF")
x <- seq(min(consumoMPG), max(consumoMPG), 0.01)
curve(dexp(x, rate = lambda), col = "red", lwd = 2, add = TRUE)
Test:
## [1] 0 1 2 3 4 5
## [1] 1 2 3 4 5 6
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(consumoMPG)
valores_validos <- FEexp > 0
X2_exp <- sum(((FO[valores_validos] - FEexp[valores_validos])^2) / FEexp[valores_validos])
X2_exp
## [1] 38.8027
## [1] 4
## [1] 9.487729
## [1] FALSE
# Limpieza de datos
consumoelec <- datos$City.Electricity.Consumption
consumoelec <- consumoelec[!is.na(consumoelec) & consumoelec != "" & consumoelec != -1]
consumoelec <- as.numeric(consumoelec)
consumoelec <- consumoelec[consumoelec > 0]
u <- mean(consumoelec)
u
## [1] 39.61481
## [1] 14.94801
# Histograma con densidad
HistogramaNormal <- hist(consumoelec, freq = FALSE,
main = "Gráfica No.9: Histograma
de Consumo de Energía con Curva Normal",
xlab = "Consumo de Energía (kWh)",
ylab = "Densidad",
col = "#A52A2A")
x <- seq(min(consumoelec), max(consumoelec), 0.01)
curve(dnorm(x, mean = u, sd = sigma), col = "blue", lwd = 2, add = TRUE)
## [1] 1
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 20 30 40 50 60 70 80 90 100 110 120
## [1] 30 40 50 60 70 80 90 100 110 120 130
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], u, sigma) - pnorm(liminf[i], u, sigma)
}
FE <- P * length(consumoelec)
FE
## [1] 3.273252e+01 4.954700e+01 4.873102e+01 3.114142e+01 1.292635e+01
## [6] 3.483008e+00 6.087099e-01 6.892975e-02 5.051996e-03 2.393769e-04
## [11] 7.324411e-06
valores_validos <- FE > 0
X2_normal <- sum(((FO[valores_validos] - FE[valores_validos])^2) / FE[valores_validos])
X2_normal
## [1] 136602.7
## [1] 8
## [1] 15.50731
## [1] FALSE
Modelo Log-Normal:
## [1] 3.623627
## [1] 0.3183241
HistogramaLogNormal <- hist(consumoelec, freq = FALSE,
main = "Gráfica No.10: Histograma
de Consumo de Energía con Curva Log-Normal",
xlab = "Consumo de Energía (kWh)",
ylab = "Densidad",
col = "#A52A2A")
x <- seq(min(consumoelec), max(consumoelec), 0.01)
curve(dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "blue", lwd = 2, add = TRUE)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 20 30 40 50 60 70 80 90 100 110 120
## [1] 30 40 50 60 70 80 90 100 110 120 130
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(consumoelec)
FElog
## [1] 43.17932136 67.09340271 46.79102490 22.34771140 8.86680961 3.21257310
## [7] 1.11693419 0.38297680 0.13154305 0.04567205 0.01611401
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 86.64989
## [1] 8
## [1] 15.50731
## [1] FALSE
Modelo Exponencial:
## [1] 0.02524309
HistExp <- hist(consumoelec, freq = FALSE,
main = "Gráfica No.11: Histograma
de Consumo de Energía con Curva Exponencial",
xlab = "Consumo de Energía (kWh)",
ylab = "Densidad",
col = "#A52A2A")
x <- seq(min(consumoelec), max(consumoelec), 0.01)
curve(dexp(x, rate = lambda), col = "blue", lwd = 2, add = TRUE)
Test:
## [1] 20 30 40 50 60 70 80 90 100 110 120
## [1] 30 40 50 60 70 80 90 100 110 120 130
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(consumoelec)
valores_validos_exp <- FEexp > 0
X2_exp <- sum(((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2) / FEexp[valores_validos_exp])
X2_exp
## [1] 230.6118
## [1] 9
## [1] 16.91898
## [1] FALSE
utilidad <- datos$City.Utility.Factor
utilidad <- as.numeric(utilidad)
utilidad <- utilidad[!is.na(utilidad) & utilidad > 0]
u <- mean(utilidad)
u
## [1] 0.4857585
## [1] 0.1618752
HistogramaNormal <- hist(utilidad, freq = FALSE,
main = "Gráfica No.12: Histograma
de Utilidad Urbana con Curva Normal",
xlab = "Utilidad Urbana",
ylab = "Densidad",
col = "#CDAA7D")
x <- seq(min(utilidad), max(utilidad), 0.01)
curve(dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0.3 0.4 0.5 0.6 0.7 0.8
## [1] 0.4 0.5 0.6 0.7 0.8 0.9
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], u, sigma) - pnorm(liminf[i], u, sigma)
}
FE <- P * length(utilidad)
valores_validos <- FE > 0
X2_normal <- sum(((FO[valores_validos] - FE[valores_validos])^2) / FE[valores_validos])
X2_normal
## [1] 42.53847
## [1] 3
## [1] 7.814728
## [1] FALSE
Modelo Log-Normal:
HistogramaLogNormal <- hist(utilidad, freq = FALSE,
main = "Gráfica No.13: Histograma
de Utilidad Urbana con Curva Log-Normal",
xlab = "Utilidad Urbana",
ylab = "Densidad",
col = "#CDAA7D")
x <- seq(min(utilidad), max(utilidad), 0.01)
curve(dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0.3 0.4 0.5 0.6 0.7 0.8
## [1] 0.4 0.5 0.6 0.7 0.8 0.9
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(utilidad)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 25.40164
## [1] 3
## [1] 7.814728
## [1] FALSE
Modelo Exponencial:
## [1] 2.058636
HistExp <- hist(utilidad, freq = FALSE,
main = "Gráfica No.14: Histograma
de Utilidad Urbana con Curva Exponencial",
xlab = "Utilidad Urbana",
ylab = "Densidad",
col = "#CDAA7D")
x <- seq(min(utilidad), max(utilidad), 0.01)
curve(dexp(x, rate = lambda), col = "red", lwd = 2, add = TRUE)
Test:
FO <- HistExp$counts
liminf <- HistExp$breaks[-length(HistExp$breaks)]
limsup <- HistExp$breaks[-1]
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(utilidad)
valores_validos_exp <- FEexp > 0
X2_exp <- sum(((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2) / FEexp[valores_validos_exp])
X2_exp
## [1] 112.5837
## [1] 4
## [1] 9.487729
## [1] FALSE
# Limpieza de datos
carretera <- datos$Highway.MPG..FT1.
carretera <- as.numeric(carretera)
carretera <- carretera[!is.na(carretera) & carretera > 0]
u <- mean(carretera)
sigma <- sd(carretera)
# Histograma y curva normal
HistogramaNormal <- hist(carretera, freq = FALSE,
main = "Gráfica No.15: Histograma
de MPG Carretera con Curva Normal",
xlab = "MPG Carretera",
ylab = "Densidad",
col = "#0000EE")
x <- seq(min(carretera), max(carretera), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95
## [20] 100 105 110 115 120
## [1] 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100
## [20] 105 110 115 120 125
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(carretera)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 473164240605
df_normal <- sum(valores_validos) - 1 - 2 # -2 por estimar media y sd
Vc_normal <- qchisq(0.95, df = df_normal)
Vc_normal
## [1] 22.36203
## [1] FALSE
Modelo Log-Normal:
# Histograma y curva log-normal
HistogramaLogNormal <- hist(carretera, freq = FALSE,
main = "Gráfica No.16: Histograma
de MPG Carretera con Curva Log-Normal",
xlab = "MPG Carretera",
ylab = "Densidad",
col = "#0000EE")
x <- seq(min(carretera), max(carretera), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95
## [20] 100 105 110 115 120
## [1] 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100
## [20] 105 110 115 120 125
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(carretera)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 7691938
df_log <- sum(valores_validos_log) - 1 - 2 # -2 por media y sd log
Vc_log <- qchisq(0.95, df = df_log)
Vc_log
## [1] 32.67057
## [1] FALSE
# Limpieza de datos
Mpgcarretera <- datos$Unrounded.Highway.MPG..FT1.
Mpgcarretera <- as.numeric(Mpgcarretera)
Mpgcarretera <- Mpgcarretera[!is.na(Mpgcarretera) & Mpgcarretera > 0]
u <- mean(Mpgcarretera)
u
## [1] 27.6541
## [1] 9.710954
# Histograma y curva normal
HistogramaNormal <- hist(Mpgcarretera, freq = FALSE,
main = "Gráfica No.17:
Histograma de MPG Carretera con Curva Normal",
xlab = "MPG Carretera",
ylab = "Densidad",
col = "#A52A2A")
x <- seq(min(Mpgcarretera), max(Mpgcarretera), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "blue", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120
## [1] 20 30 40 50 60 70 80 90 100 110 120 130
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(Mpgcarretera)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 3.10525e+12
df_normal <- sum(valores_validos) - 1 - 2 # 2 parámetros estimados: media y desviación estándar
Vc_normal <- qchisq(0.95, df = df_normal)
Vc_normal
## [1] 14.06714
## [1] FALSE
Modelo Log-Normal:
# Histograma y curva log-normal
HistogramaLogNormal <- hist(Mpgcarretera, freq = FALSE,
main = "Gráfica No.18:
Histograma de MPG Carretera con Curva Log-Normal",
xlab = "MPG Carretera",
ylab = "Densidad",
col = "#A52A2A")
x <- seq(min(Mpgcarretera), max(Mpgcarretera), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "blue", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120
## [1] 20 30 40 50 60 70 80 90 100 110 120 130
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(Mpgcarretera)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 1090253
## [1] 16.91898
## [1] FALSE
# Limpieza de datos
Mpgcarretera2 <- datos$Highway.MPG..FT2.
Mpgcarretera2 <- as.numeric(Mpgcarretera2)
Mpgcarretera2 <- Mpgcarretera2[!is.na(Mpgcarretera2) & Mpgcarretera2 > 0]
u <- mean(Mpgcarretera2)
u
## [1] 18.85605
## [1] 14.08596
HistogramaNormal <- hist(Mpgcarretera2, freq = FALSE,
main = "Gráfica No.19: Histograma
de MPG Carretera (FT2) con Curva Normal",
xlab = "MPG Carretera (FT2)",
ylab = "Densidad",
col = "cadetblue1")
x <- seq(min(Mpgcarretera2), max(Mpgcarretera2), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120
## [1] 20 30 40 50 60 70 80 90 100 110 120 130
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(Mpgcarretera2)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 2028539434
## [1] 16.91898
## [1] FALSE
Modelo Log-Normal:
## [1] 2.822761
## [1] 0.3918665
HistogramaLogNormal <- hist(Mpgcarretera2, freq = FALSE,
main = "Gráfica No.20: Histograma
de MPG Carretera (FT2) con Curva Log-Normal",
xlab = "MPG Carretera (FT2)",
ylab = "Densidad",
col = "cadetblue1")
x <- seq(min(Mpgcarretera2), max(Mpgcarretera2), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120
## [1] 20 30 40 50 60 70 80 90 100 110 120 130
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(Mpgcarretera2)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 55930.21
## [1] 16.91898
## [1] FALSE
Modelo Exponencial:
## [1] 0.05303338
HistExp <- hist(Mpgcarretera2, freq = FALSE,
main = "Gráfica No.21: Histograma
de MPG Carretera (FT2) con Curva Exponencial",
xlab = "MPG Carretera (FT2)",
ylab = "Densidad",
col = "cadetblue1")
x <- seq(min(Mpgcarretera2), max(Mpgcarretera2), 0.01)
lines(x, dexp(x, rate = lambda), col = "red", lwd = 2)
Test:
## [1] 10 20 30 40 50 60 70 80 90 100 110 120
## [1] 20 30 40 50 60 70 80 90 100 110 120 130
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(Mpgcarretera2)
valores_validos_exp <- FEexp > 0
X2_exp <- sum(((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2) / FEexp[valores_validos_exp])
X2_exp
## [1] 2272.227
df_exp <- sum(valores_validos_exp) - 1 - 1 # 1 parámetro estimado (lambda)
Vc_exp <- qchisq(0.95, df = df_exp)
Vc_exp
## [1] 18.30704
## [1] FALSE
# Limpieza de datos
Mpgcarretera22 <- datos$Unrounded.Highway.MPG..FT2.
Mpgcarretera22 <- as.numeric(Mpgcarretera22)
Mpgcarretera22 <- Mpgcarretera22[!is.na(Mpgcarretera22) & Mpgcarretera22 > 0]
lambda <- 1 / mean(Mpgcarretera22)
lambda
## [1] 0.04739992
HistExp <- hist(Mpgcarretera22, freq = FALSE,
main = "Gráfica No.22: Histograma
de MPG Carretera sin Red (FT2) con Curva Exponencial",
xlab = "MPG Carretera (FT2)",
ylab = "Densidad",
col = "#7FFF00")
x <- seq(min(Mpgcarretera22), max(Mpgcarretera22), 0.01)
lines(x, dexp(x, rate = lambda), col = "red", lwd = 2)
Test:
## [1] 10 20 30 40 50 60 70 80 90 100 110 120
## [1] 20 30 40 50 60 70 80 90 100 110 120 130
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(Mpgcarretera2)
valores_validos_exp <- FEexp > 0
X2_exp <- sum(((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2) / FEexp[valores_validos_exp])
X2_exp
## [1] 558.2622
df_exp <- sum(valores_validos_exp) - 1 - 1 # 1 parámetro estimado (lambda)
Vc_exp <- qchisq(0.95, df = df_exp)
Vc_exp
## [1] 18.30704
## [1] FALSE
# Limpieza de datos
carreteragas <- datos$Highway.Gasoline.Consumption..CD.
carreteragas <- as.numeric(carreteragas)
carreteragas <- carreteragas[!is.na(carreteragas) & carreteragas > 0]
lambda <- 1 / mean(carreteragas)
lambda
## [1] 1.222426
# Histograma y curva exponencial
HistExp <- hist(carreteragas, freq = FALSE,
main = "Gráfica No.23: Histograma de
Consumo de Gasolina en Carretera con Curva Exponencial",
xlab = "Consumo de Gasolina (gal)",
ylab = "Densidad",
col = "#FF7F24")
x <- seq(min(carreteragas), max(carreteragas), 0.01)
lines(x, dexp(x, rate = lambda), col = "red", lwd = 2)
Test:
## [1] 0 1 2 3 4
## [1] 1 2 3 4 5
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(carreteragas)
valores_validos_exp <- FEexp > 0
X2_exp <- sum(((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2) / FEexp[valores_validos_exp])
X2_exp
## [1] 67.92282
df_exp <- sum(valores_validos_exp) - 1 - 1 # -1 parámetro estimado (lambda)
Vc_exp <- qchisq(0.95, df = df_exp)
Vc_exp
## [1] 7.814728
## [1] FALSE
# Limpieza de datos
carreteragas <- datos$Highway.Electricity.Consumption
carreteragas <- as.numeric(carreteragas)
carreteragas <- carreteragas[!is.na(carreteragas) & carreteragas > 0]
u <- mean(carreteragas)
u
## [1] 42.19774
## [1] 14.9563
HistogramaNormal <- hist(carreteragas, freq = FALSE,
main = "Gráfica No.24: Histograma
de Consumo Eléctrico en Carretera con Curva Normal",
xlab = "Consumo Eléctrico (kWh)",
ylab = "Densidad",
col = "#FF7F50")
x <- seq(min(carreteragas), max(carreteragas), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 20 30 40 50 60 70 80 90 100 110
## [1] 30 40 50 60 70 80 90 100 110 120
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(carreteragas)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 3455.249
## [1] 14.06714
## [1] FALSE
Modelo Log-Normal:
## [1] 3.697229
## [1] 0.2804669
HistogramaLogNormal <- hist(carreteragas, freq = FALSE,
main = "Gráfica No.25: Histograma
de Consumo Eléctrico en Carretera con Curva Log-Normal",
xlab = "Consumo Eléctrico (kWh)",
ylab = "Densidad",
col = "#FF7F50")
x <- seq(min(carreteragas), max(carreteragas), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 20 30 40 50 60 70 80 90 100 110
## [1] 30 40 50 60 70 80 90 100 110 120
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(carreteragas)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 277.5895
## [1] 14.06714
## [1] FALSE
Modelo Exponencial:
## [1] 0.02369795
HistExp <- hist(carreteragas, freq = FALSE,
main = "Gráfica No.26: Histograma
de Consumo Eléctrico en Carretera con Curva Exponencial",
xlab = "Consumo Eléctrico (kWh)",
ylab = "Densidad",
col = "#FF7F50")
x <- seq(min(carreteragas), max(carreteragas), 0.01)
lines(x, dexp(x, rate = lambda), col = "red", lwd = 2)
Test:
## [1] 20 30 40 50 60 70 80 90 100 110
## [1] 30 40 50 60 70 80 90 100 110 120
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(carreteragas)
valores_validos_exp <- FEexp > 0
X2_exp <- sum(((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2) / FEexp[valores_validos_exp])
X2_exp
## [1] 486.6106
## [1] 15.50731
## [1] FALSE
# Limpieza de datos
utilidadcarre <- datos$Highway.Utility.Factor
utilidadcarre <- as.numeric(utilidadcarre)
utilidadcarre <- utilidadcarre[!is.na(utilidadcarre) & utilidadcarre > 0]
u <- mean(utilidadcarre)
u
## [1] 0.4641385
## [1] 0.1567848
HistogramaNormal <- hist(utilidadcarre, freq = FALSE,
main = "Gráfica No.27: Histograma
de Utility Factor en Carretera con Curva Normal",
xlab = "Utility Factor",
ylab = "Densidad",
col = "#FFF8DC")
x <- seq(min(utilidadcarre), max(utilidadcarre), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0.2 0.3 0.4 0.5 0.6 0.7 0.8
## [1] 0.3 0.4 0.5 0.6 0.7 0.8 0.9
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(utilidadcarre)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 34.32042
## [1] 9.487729
## [1] FALSE
Modelo Log-Normal:
## [1] -0.8192646
## [1] 0.318924
HistogramaLogNormal <- hist(utilidadcarre, freq = FALSE,
main = "Gráfica No.28: Histograma
de Utility Factor en Carretera con Curva Log-Normal",
xlab = "Utility Factor",
ylab = "Densidad",
col = "#FFF8DC")
x <- seq(min(utilidadcarre), max(utilidadcarre), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0.2 0.3 0.4 0.5 0.6 0.7 0.8
## [1] 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(utilidadcarre)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 20.20751
## [1] 9.487729
## [1] FALSE
# Limpieza de datos
cuidadmpg <- datos$Unadjusted.City.MPG..FT1.
cuidadmpg <- as.numeric(cuidadmpg)
cuidadmpg <- cuidadmpg[!is.na(cuidadmpg) & cuidadmpg > 0]
u <- mean(cuidadmpg)
u
## [1] 22.66826
## [1] 9.635877
HistogramaNormal <- hist(cuidadmpg, freq = FALSE,
main = "Gráfica No.29: Histograma
de City MPG (FT1) con Curva Normal",
xlab = "City MPG (FT1)",
ylab = "Densidad",
col = "cyan")
x <- seq(min(cuidadmpg), max(cuidadmpg), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
## [20] 190 200 210 220
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
## [20] 200 210 220 230
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(cuidadmpg)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 189189554798
## [1] 15.50731
## [1] FALSE
Modelo Log-Normal:
## [1] 3.071552
## [1] 0.2914421
HistogramaLogNormal <- hist(cuidadmpg, freq = FALSE,
main = "Gráfica No.30: Histograma
de City MPG (FT1) con Curva Log-Normal",
xlab = "City MPG (FT1)",
ylab = "Densidad",
col = "cyan")
x <- seq(min(cuidadmpg), max(cuidadmpg), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
## [20] 190 200 210 220
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
## [20] 200 210 220 230
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(cuidadmpg)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 136881620285
## [1] 31.41043
## [1] FALSE
# Limpieza de datos
carreteraMpg <- datos$Unadjusted.Highway.MPG..FT1.
carreteraMpg <- as.numeric(carreteraMpg)
carreteraMpg <- carreteraMpg[!is.na(carreteraMpg) & carreteraMpg > 0]
u <- mean(carreteraMpg)
u
## [1] 33.70009
## [1] 10.19994
HistogramaNormal <- hist(carreteraMpg, freq = FALSE,
main = "Gráfica No.31: Histograma
de Unadjusted Highway MPG (FT1) con Curva Normal",
xlab = "Highway MPG (FT1)",
ylab = "Densidad",
col = "darkgoldenrod1")
x <- seq(min(carreteraMpg), max(carreteraMpg), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
## [1] 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(carreteraMpg)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 159318655606
## [1] 15.50731
## [1] FALSE
Modelo Log-Normal:
## [1] 3.480057
## [1] 0.2686124
HistogramaLogNormal <- hist(carreteraMpg, freq = FALSE,
main = "Gráfica No.32: Histograma
de Unadjusted Highway MPG (FT1) con Curva Log-Normal",
xlab = "Highway MPG (FT1)",
ylab = "Densidad",
col = "darkgoldenrod1")
x <- seq(min(carreteraMpg), max(carreteraMpg), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
## [1] 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(carreteraMpg)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 2964975
## [1] 24.99579
## [1] FALSE
# Limpieza de datos
cuidadmpg2 <- datos$Unadjusted.City.MPG..FT2.
cuidadmpg2 <- as.numeric(cuidadmpg2)
cuidadmpg2 <- cuidadmpg2[!is.na(cuidadmpg2) & cuidadmpg2 > 0]
lambda <- 1 / mean(cuidadmpg2)
lambda
## [1] 0.05303699
# Histograma y curva exponencial
HistExp <- hist(cuidadmpg2, freq = FALSE,
main = "Gráfica No.33: Histograma
de MPG Ciudad (FT2) con Curva Exponencial",
xlab = "MPG Ciudad (FT2)",
ylab = "Densidad",
col = "#A2CD5A")
x <- seq(min(cuidadmpg2), max(cuidadmpg2), 0.01)
lines(x, dexp(x, rate = lambda), col = "red", lwd = 2)
Test:
## [1] 0 20 40 60 80 100 120 140 160 180 200
## [1] 20 40 60 80 100 120 140 160 180 200 220
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(cuidadmpg2)
# Prueba de bondad de ajuste
valores_validos_exp <- FEexp > 0
X2_exp <- sum(((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2) / FEexp[valores_validos_exp])
X2_exp
## [1] 1070.92
df_exp <- sum(valores_validos_exp) - 1 - 1 # 1 parámetro estimado: lambda
Vc_exp <- qchisq(0.95, df = df_exp)
Vc_exp
## [1] 16.91898
## [1] FALSE
# Limpieza de datos
carreteraMpg2 <- datos$Unadjusted.Highway.MPG..FT2.
carreteraMpg2 <- as.numeric(carreteraMpg2)
carreteraMpg2 <- carreteraMpg2[!is.na(carreteraMpg2) & carreteraMpg2 > 0]
u <- mean(carreteraMpg2)
u
## [1] 26.62751
## [1] 20.75965
# Histograma y curva normal
HistogramaNormal <- hist(carreteraMpg2, freq = FALSE,
main = "Gráfica No.34: Histograma de
Unadjusted Highway MPG (FT2) con Curva Normal",
xlab = "Highway MPG (FT2)",
ylab = "Densidad",
col = "darkolivegreen4")
x <- seq(min(carreteraMpg2), max(carreteraMpg2), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170
## [1] 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(carreteraMpg2)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 308641136
## [1] 23.68479
## [1] FALSE
Modelo Log-Normal:
## [1] 3.157438
## [1] 0.4102108
# Histograma y curva log-normal
HistogramaLogNormal <- hist(carreteraMpg2, freq = FALSE,
main = "Gráfica No.35: Histograma de
Unadjusted Highway MPG (FT2) con Curva Log-Normal",
xlab = "Highway MPG (FT2)",
ylab = "Densidad",
col = "darkolivegreen4")
x <- seq(min(carreteraMpg2), max(carreteraMpg2), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170
## [1] 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(carreteraMpg2)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 31893.76
## [1] 23.68479
## [1] FALSE
# Limpieza de datos
mpgcombinado <- datos$Combined.MPG..FT1.
mpgcombinado <- as.numeric(mpgcombinado)
mpgcombinado <- mpgcombinado[!is.na(mpgcombinado) & mpgcombinado > 0]
u <- mean(mpgcombinado)
u
## [1] 20.21607
## [1] 6.772655
# Histograma y curva normal
HistogramaNormal <- hist(mpgcombinado, freq = FALSE,
main = "Gráfica No.36: Histograma
de Combined MPG (FT1) con Curva Normal",
xlab = "Combined MPG (FT1)",
ylab = "Densidad",
col = "#00BFFF")
x <- seq(min(mpgcombinado), max(mpgcombinado), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(mpgcombinado)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 32202911516
## [1] 11.0705
## [1] FALSE
Modelo Log-Normal:
## [1] 2.968419
## [1] 0.2633737
# Histograma y curva log-normal
HistogramaLogNormal <- hist(mpgcombinado, freq = FALSE,
main = "Gráfica No.37: Histograma
de Combined MPG (FT1) con Curva Log-Normal",
xlab = "Combined MPG (FT1)",
ylab = "Densidad",
col = "#00BFFF")
x <- seq(min(mpgcombinado), max(mpgcombinado), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(mpgcombinado)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 1240732936
## [1] 19.67514
## [1] FALSE
# Limpieza de datos
mpgcombinado1 <- datos$Unrounded.Combined.MPG..FT1.
mpgcombinado1 <- as.numeric(mpgcombinado1)
mpgcombinado1 <- mpgcombinado1[!is.na(mpgcombinado1) & mpgcombinado1 > 0]
u <- mean(mpgcombinado1)
u
## [1] 23.29061
## [1] 10.42525
# Histograma y curva normal
HistogramaNormal <- hist(mpgcombinado1, freq = FALSE,
main = "Gráfica No.38: Histograma
de Unrounded Combined MPG (FT1) con Curva Normal",
xlab = "Unrounded Combined MPG (FT1)",
ylab = "Densidad",
col = "#FFD700")
x <- seq(min(mpgcombinado1), max(mpgcombinado1), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130
## [1] 20 30 40 50 60 70 80 90 100 110 120 130 140
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(mpgcombinado1)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 792807587176
## [1] 14.06714
## [1] FALSE
Modelo Log-Normal:
## [1] 3.094357
## [1] 0.2960055
# Histograma y curva log-normal
HistogramaLogNormal <- hist(mpgcombinado, freq = FALSE,
main = "Gráfica No.39: Histograma
de Unrounded Combined MPG (FT1) con Curva Log-Normal",
xlab = "Unrounded Combined MPG (FT1)",
ylab = "Densidad",
col = "#FFD700")
x <- seq(min(mpgcombinado1), max(mpgcombinado1), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(mpgcombinado)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 1032727
## [1] 19.67514
## [1] FALSE
# Limpieza de datos
mpgcombinado2 <- datos$Combined.MPG..FT2.
mpgcombinado2 <- as.numeric(mpgcombinado2)
mpgcombinado2 <- mpgcombinado2[!is.na(mpgcombinado2) & mpgcombinado2 > 0]
u <- mean(mpgcombinado2)
u
## [1] 16.08484
## [1] 14.86491
# Histograma y curva normal
HistogramaNormal <- hist(mpgcombinado2, freq = FALSE,
main = "Gráfica No.40: Histograma
de Combined MPG (FT2) con Curva Normal",
xlab = "Combined MPG (FT2)",
ylab = "Densidad",
col = "#838B83")
x <- seq(min(mpgcombinado2), max(mpgcombinado2), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(mpgcombinado2)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 76520244882
## [1] 19.67514
## [1] FALSE
Modelo Log-Normal:
## [1] 2.631469
## [1] 0.4231796
# Histograma y curva log-normal
HistogramaLogNormal <- hist(mpgcombinado2, freq = FALSE,
main = "Gráfica No.41: Histograma de
Combined MPG (FT2) con Curva Log-Normal",
xlab = "Combined MPG (FT2)",
ylab = "Densidad",
col = "#838B83")
x <- seq(min(mpgcombinado2), max(mpgcombinado2), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(mpgcombinado2)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 123150.5
## [1] 19.67514
## [1] FALSE
# Limpieza de datos
mpgcombinado2 <- datos$Unrounded.Combined.MPG..FT1.
mpgcombinado2 <- as.numeric(mpgcombinado2)
mpgcombinado2 <- mpgcombinado2[!is.na(mpgcombinado2) & mpgcombinado2 > 0]
u <- mean(mpgcombinado2)
u
## [1] 23.29061
## [1] 10.42525
# Histograma y curva normal
HistogramaNormal <- hist(mpgcombinado2, freq = FALSE,
main = "Gráfica No.42: Histograma
de Unrounded Combined MPG (FT2) con Curva Normal",
xlab = "Unrounded Combined MPG (FT2)",
ylab = "Densidad",
col = "#FF69B4")
x <- seq(min(mpgcombinado2), max(mpgcombinado2), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130
## [1] 20 30 40 50 60 70 80 90 100 110 120 130 140
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(mpgcombinado2)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 792807587176
## [1] 14.06714
## [1] FALSE
Modelo Log-Normal:
## [1] 3.094357
## [1] 0.2960055
# Histograma y curva log-normal
HistogramaLogNormal <- hist(mpgcombinado2, freq = FALSE,
main = "Gráfica No.43: Histograma
de Unrounded Combined MPG (FT2) con Curva Log-Normal",
xlab = "Unrounded Combined MPG (FT2)",
ylab = "Densidad",
col = "#FF69B4")
x <- seq(min(mpgcombinado2), max(mpgcombinado2), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130
## [1] 20 30 40 50 60 70 80 90 100 110 120 130 140
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(mpgcombinado)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 1041385
## [1] 18.30704
## [1] FALSE
# Limpieza de datos
combinadoelec <- datos$Combined.Electricity.Consumption
combinadoelec <- as.numeric(combinadoelec)
combinadoelec <- combinadoelec[!is.na(combinadoelec) & combinadoelec > 0]
u <- mean(combinadoelec)
u
## [1] 40.72339
## [1] 14.72142
# Histograma y curva normal
HistogramaNormal <- hist(combinadoelec, freq = FALSE,
main = "Gráfica No.44: Histograma
de Combined Electricity Consumption con Curva Normal",
xlab = "Combined Electricity Consumption (kWh)",
ylab = "Densidad",
col = "lavenderblush1")
x <- seq(min(combinadoelec), max(combinadoelec), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 20 30 40 50 60 70 80 90 100 110 120
## [1] 30 40 50 60 70 80 90 100 110 120 130
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(combinadoelec)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 142305.6
## [1] 15.50731
## [1] FALSE
Modelo Log-Normal:
## [1] 3.657823
## [1] 0.2954045
# Histograma y curva log-normal
HistogramaLogNormal <- hist(combinadoelec, freq = FALSE,
main = "Gráfica No.45: Histograma de Combined
Electricity Consumption con Curva Log-Normal",
xlab = "Combined Electricity Consumption (kWh)",
ylab = "Densidad",
col = "lavenderblush1")
x <- seq(min(combinadoelec), max(combinadoelec), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 20 30 40 50 60 70 80 90 100 110 120
## [1] 30 40 50 60 70 80 90 100 110 120 130
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(combinadoelec)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 163.6557
## [1] 15.50731
## [1] FALSE
# Limpieza de datos
combinadogas <- datos$Combined.Gasoline.Consumption..CD.
combinadogas <- as.numeric(combinadogas)
combinadogas <- combinadogas[!is.na(combinadogas) & combinadogas > 0]
lambda <- 1 / mean(combinadogas)
lambda
## [1] 1.357527
HistExp <- hist(combinadogas, freq = FALSE,
main = "Gráfica No.46: Histograma de Combined
Gasoline Consumption (CD) con Curva Exponencial",
xlab = "Consumo de Gasolina Combinado (galones)",
ylab = "Densidad",
col = "#FF83FA")
x <- seq(min(combinadogas), max(combinadogas), 0.01)
lines(x, dexp(x, rate = lambda), col = "red", lwd = 2)
Test:
## [1] 0 1 2 3 4
## [1] 1 2 3 4 5
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(combinadogas)
valores_validos_exp <- FEexp > 0
X2_exp <- sum((FO[valores_validos_exp] - FEexp[valores_validos_exp])^2 / FEexp[valores_validos_exp])
X2_exp
## [1] 69.40032
## [1] 7.814728
## [1] FALSE
# Limpieza de datos
combinadouti <- datos$Combined.Utility.Factor
combinadouti <- as.numeric(combinadouti)
combinadouti <- combinadouti[!is.na(combinadouti) & combinadouti > 0]
u <- mean(combinadouti)
u
## [1] 0.4761246
## [1] 0.1584115
HistogramaNormal <- hist(combinadouti, freq = FALSE,
main = "Gráfica No.47: Histograma de
Combined Utility Factor con Curva Normal",
xlab = "Combined Utility Factor",
ylab = "Densidad",
col = "#FFC0CB")
x <- seq(min(combinadouti), max(combinadouti), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0.2 0.3 0.4 0.5 0.6 0.7 0.8
## [1] 0.3 0.4 0.5 0.6 0.7 0.8 0.9
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(combinadouti)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 31.6868
## [1] 9.487729
## [1] FALSE
Modelo Log-Normal:
## [1] -0.7915008
## [1] 0.3101012
HistogramaLogNormal <- hist(combinadouti, freq = FALSE,
main = "Gráfica No.48: Histograma
de Combined Utility Factor con Curva Log-Normal",
xlab = "Combined Utility Factor",
ylab = "Densidad",
col = "#FFC0CB")
x <- seq(min(combinadouti), max(combinadouti), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0.2 0.3 0.4 0.5 0.6 0.7 0.8
## [1] 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(combinadouti)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 20.27282
## [1] 9.487729
## [1] FALSE
# Limpieza de datos
costoanual <- datos$Annual.Fuel.Cost..FT1.
costoanual <- as.numeric(costoanual)
costoanual <- costoanual[!is.na(costoanual) & costoanual > 0]
u <- mean(costoanual)
u
## [1] 1970.675
## [1] 532.5552
HistogramaNormal <- hist(costoanual, freq = FALSE,
main = "Gráfica No.49: Histograma de
Annual Fuel Cost (FT1) con Curva Normal",
xlab = "Annual Fuel Cost (FT1)",
ylab = "Densidad",
col = "#87CEEB")
x <- seq(min(costoanual), max(costoanual), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 6000
## [1] 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 6000 6500
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(costoanual)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 34151630848
## [1] 16.91898
## [1] FALSE
Modelo Log-Normal:
## [1] 7.550055
## [1] 0.2711438
HistogramaLogNormal <- hist(costoanual, freq = FALSE,
main = "Gráfica No.50: Histograma
de Annual Fuel Cost (FT1) con Curva Log-Normal",
xlab = "Annual Fuel Cost (FT1)",
ylab = "Densidad",
col = "#87CEEB")
x <- seq(min(costoanual), max(costoanual), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 6000
## [1] 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 6000 6500
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(costoanual)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 1058.643
## [1] 16.91898
## [1] FALSE
# Limpieza de datos
costoanual2 <- datos$Annual.Fuel.Cost..FT2.
costoanual2 <- as.numeric(costoanual2)
costoanual2 <- costoanual2[!is.na(costoanual2) & costoanual2 > 0]
u <- mean(costoanual2)
u
## [1] 2290.668
## [1] 494.6834
HistogramaNormal <- hist(costoanual2, freq = FALSE,
main = "Gráfica No.51: Histograma de
Annual Fuel Cost (FT2) con Curva Normal",
xlab = "Annual Fuel Cost (FT2)",
ylab = "Densidad",
col = "#D2B48C")
x <- seq(min(costoanual2), max(costoanual2), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 400 600 800 1000 1200 1400 1600 1800 2000 2200 2400 2600 2800 3000 3200
## [16] 3400 3600
## [1] 600 800 1000 1200 1400 1600 1800 2000 2200 2400 2600 2800 3000 3200 3400
## [16] 3600 3800
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(costoanual2)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 695.0383
## [1] 23.68479
## [1] FALSE
Modelo Log-Normal:
## [1] 7.709663
## [1] 0.2446102
HistogramaLogNormal <- hist(costoanual2, freq = FALSE,
main = "Gráfica No.52: Histograma
de Annual Fuel Cost (FT2) con Curva Log-Normal",
xlab = "Annual Fuel Cost (FT2)",
ylab = "Densidad",
col = "#D2B48C")
x <- seq(min(costoanual2), max(costoanual2), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 400 600 800 1000 1200 1400 1600 1800 2000 2200 2400 2600 2800 3000 3200
## [16] 3400 3600
## [1] 600 800 1000 1200 1400 1600 1800 2000 2200 2400 2600 2800 3000 3200 3400
## [16] 3600 3800
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(costoanual2)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 648308
## [1] 23.68479
## [1] FALSE
## [1] -3101.75
## [1] 2664.985
HistogramaNormal <- hist(ahorrargas, freq = FALSE,
main = "Gráfica No.53: Histograma
de Save or Spend (5 Year) con Curva Normal",
xlab = "Save or Spend (5 Year)",
ylab = "Densidad",
col = "#FFFF00")
x <- seq(min(ahorrargas), max(ahorrargas), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] -24000 -22000 -20000 -18000 -16000 -14000 -12000 -10000 -8000 -6000
## [11] -4000 -2000 0 2000 4000
## [1] -22000 -20000 -18000 -16000 -14000 -12000 -10000 -8000 -6000 -4000
## [11] -2000 0 2000 4000 6000
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(ahorrargas)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 990916658
## [1] 21.02607
## [1] FALSE
Modelo Log-Normal:
## Warning in log(ahorrargas): Se han producido NaNs
## [1] NaN
## [1] NA
HistogramaLogNormal <- hist(ahorrargas, freq = FALSE,
main = "Gráfica No.54: Histograma
de Save or Spend (5 Year) con Curva Log-Normal",
xlab = "Save or Spend (5 Year)",
ylab = "Densidad",
col = "#FFFF00")
x <- seq(min(ahorrargas), max(ahorrargas), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] -24000 -22000 -20000 -18000 -16000 -14000 -12000 -10000 -8000 -6000
## [11] -4000 -2000 0 2000 4000
## [1] -22000 -20000 -18000 -16000 -14000 -12000 -10000 -8000 -6000 -4000
## [11] -2000 0 2000 4000 6000
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(ahorrargas)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] NA
## [1] NA
## [1] NA
# Limpieza de datos
consumobarr <- datos$Annual.Consumption.in.Barrels..FT1.
consumobarr <- as.numeric(consumobarr)
consumobarr <- consumobarr[!is.na(consumobarr) & consumobarr > 0]
u <- mean(consumobarr)
u
## [1] 17.51763
## [1] 4.577019
HistogramaNormal <- hist(consumobarr, freq = FALSE,
main = "Gráfica No.55: Histograma de Annual
Consumption in Barrels (FT1) con Curva Normal",
xlab = "Annual Consumption in Barrels (FT1)",
ylab = "Densidad",
col = "#F5DEB3")
x <- seq(min(consumobarr), max(consumobarr), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46
## [1] 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(consumobarr)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 2935688
## [1] 32.67057
## [1] FALSE
Modelo Log-Normal:
## [1] 2.814365
## [1] 0.4092279
HistogramaLogNormal <- hist(consumobarr, freq = FALSE,
main = "Gráfica No.56: Histograma de Annual
Consumption in Barrels (FT1) con Curva Log-Normal",
xlab = "Annual Consumption in Barrels (FT1)",
ylab = "Densidad",
col = "#F5DEB3")
x <- seq(min(consumobarr), max(consumobarr), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46
## [1] 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(consumobarr)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 9362532
## [1] 32.67057
## [1] FALSE
# Limpieza de datos
consumobarr2 <- datos$Annual.Consumption.in.Barrels..FT2.
consumobarr2 <- as.numeric(consumobarr2)
consumobarr2 <- consumobarr2[!is.na(consumobarr2) & consumobarr2 > 0]
u <- mean(consumobarr2)
u
## [1] 5.782774
## [1] 1.579549
HistogramaNormal <- hist(consumobarr2, freq = FALSE,
main = "Gráfica No.57: Histograma de Annual
Consumption in Barrels (FT2) con Curva Normal",
xlab = "Annual Consumption in Barrels (FT2)",
ylab = "Densidad",
col = "turquoise2")
x <- seq(min(consumobarr2), max(consumobarr2), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 2 4 6 8 10 12 14 16 18
## [1] 2 4 6 8 10 12 14 16 18 20
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(consumobarr2)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 533080771615
## [1] 14.06714
## [1] FALSE
Modelo Log-Normal:
## [1] 1.662494
## [1] 0.6148547
HistogramaLogNormal <- hist(consumobarr2, freq = FALSE,
main = "Gráfica No.58: Histograma de Annual
Consumption in Barrels (FT2) con Curva Log-Normal",
xlab = "Annual Consumption in Barrels (FT2)",
ylab = "Densidad",
col = "turquoise2")
x <- seq(min(consumobarr2), max(consumobarr2), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 2 4 6 8 10 12 14 16 18
## [1] 2 4 6 8 10 12 14 16 18 20
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(consumobarr2)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 1279.505
## [1] 14.06714
## [1] FALSE
# Limpieza de datos
co2tubo <- datos$Tailpipe.CO2..FT1.
co2tubo <- as.numeric(co2tubo)
co2tubo <- co2tubo[!is.na(co2tubo) & co2tubo > 0]
u <- mean(co2tubo)
u
## [1] 411.8011
## [1] 103.5849
HistogramaNormal <- hist(co2tubo, freq = FALSE,
main = "Gráfica No.59: Histograma de
Tailpipe CO2 (FT1) con Curva Normal",
xlab = "Tailpipe CO2 (FT1)",
ylab = "Densidad",
col = "#CDC9C9")
x <- seq(min(co2tubo), max(co2tubo), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800
## [1] 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800 850
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(co2tubo)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 476.0377
## [1] 23.68479
## [1] FALSE
Modelo Log-Normal:
## [1] 5.987002
## [1] 0.2693047
HistogramaLogNormal <- hist(co2tubo, freq = FALSE,
main = "Gráfica No.60: Histograma de
Tailpipe CO2 (FT1) con Curva Log-Normal",
xlab = "Tailpipe CO2 (FT1)",
ylab = "Densidad",
col = "#CDC9C9")
x <- seq(min(co2tubo), max(co2tubo), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800
## [1] 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800 850
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(co2tubo)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 405626382680
## [1] 23.68479
## [1] FALSE
## [1] 472.7614
## [1] 122.2004
HistogramaNormal <- hist(co2tubo1, freq = FALSE,
main = "Gráfica No.61: Histograma de
Tailpipe CO2 (FT1) con Curva Normal",
xlab = "Tailpipe CO2 (g/mi)",
ylab = "Densidad",
col = "#8B8989")
x <- seq(min(co2tubo1), max(co2tubo1), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 100 200 300 400 500 600 700 800 900 1000 1100 1200
## [1] 100 200 300 400 500 600 700 800 900 1000 1100 1200 1300
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(co2tubo1)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 727805.1
## [1] 18.30704
## [1] FALSE
Modelo Log-Normal:
## [1] -Inf
## [1] NaN
HistogramaLogNormal <- hist(co2tubo1, freq = FALSE,
main = "Gráfica No.62: Histograma de
Tailpipe CO2 (FT1) con Curva Log-Normal",
xlab = "Tailpipe CO2 (g/mi)",
ylab = "Densidad",
col = "#8B8989")
x <- seq(min(co2tubo1), max(co2tubo1), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 100 200 300 400 500 600 700 800 900 1000 1100 1200
## [1] 100 200 300 400 500 600 700 800 900 1000 1100 1200 1300
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(co2tubo1)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] NA
## [1] NA
## [1] NA
# Limpieza de datos
co2tubo2 <- datos$Tailpipe.CO2..FT1.
co2tubo2 <- as.numeric(co2tubo2)
co2tubo2 <- co2tubo2[!is.na(co2tubo2) & co2tubo2 > 0]
u <- mean(co2tubo2)
u
## [1] 411.8011
## [1] 103.5849
HistogramaNormal <- hist(co2tubo2, freq = FALSE,
main = "Gráfica No.63: Histograma de
Tailpipe CO2 (FT2) con Curva Normal",
xlab = "Tailpipe CO2 (FT2)",
ylab = "Densidad",
col = "#CDC9C9")
x <- seq(min(co2tubo2), max(co2tubo2), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800
## [1] 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800 850
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(co2tubo2)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 476.0377
## [1] 23.68479
## [1] FALSE
Modelo Log-Normal:
## [1] 5.987002
## [1] 0.2693047
HistogramaLogNormal <- hist(co2tubo2, freq = FALSE,
main = "Gráfica No.64: Histograma de
Tailpipe CO2 (FT2) con Curva Log-Normal",
xlab = "Tailpipe CO2 (FT2)",
ylab = "Densidad",
col = "#CDC9C9")
x <- seq(min(co2tubo2), max(co2tubo2), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800
## [1] 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800 850
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(co2tubo2)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 405626382680
## [1] 23.68479
## [1] FALSE
# Limpieza de datos
co2tubo3 <- datos$Tailpipe.CO2.in.Grams.Mile..FT2.
co2tubo3 <- as.numeric(co2tubo3)
co2tubo3 <- co2tubo3[!is.na(co2tubo3) & co2tubo3 > 0]
u <- mean(co2tubo3)
u
## [1] 495.5821
## [1] 96.64509
HistogramaNormal <- hist(co2tubo3, freq = FALSE,
main = "Gráfica No.65: Histograma de
Tailpipe CO2 (FT2) con Curva Normal",
xlab = "Tailpipe CO2 (g/mi)",
ylab = "Densidad",
col = "#FFFAFA")
x <- seq(min(co2tubo3), max(co2tubo3), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 250 300 350 400 450 500 550 600 650 700
## [1] 300 350 400 450 500 550 600 650 700 750
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(co2tubo3)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 178.5956
## [1] 14.06714
## [1] FALSE
Modelo Log-Normal:
## [1] 6.185852
## [1] 0.2023022
HistogramaLogNormal <- hist(co2tubo3, freq = FALSE,
main = "Gráfica No.66: Histograma de
Tailpipe CO2 (FT2) con Curva Log-Normal",
xlab = "Tailpipe CO2 (g/mi)",
ylab = "Densidad",
col = "#FFFAFA")
x <- seq(min(co2tubo3), max(co2tubo3), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 250 300 350 400 450 500 550 600 650 700
## [1] 300 350 400 450 500 550 600 650 700 750
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(co2tubo3)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 224.4972
## [1] 14.06714
## [1] FALSE
# Limpieza de datos
volpasajeros2d <- datos$X2D.Passenger.Volume
volpasajeros2d <- as.numeric(volpasajeros2d)
volpasajeros2d <- volpasajeros2d[!is.na(volpasajeros2d) & volpasajeros2d > 0]
u <- mean(volpasajeros2d)
u
## [1] 83.06513
## [1] 12.9218
HistogramaNormal <- hist(volpasajeros2d, freq = FALSE,
main = "Gráfica No.67: Histograma
de 2D Passenger Volume con Curva Normal",
xlab = "2D Passenger Volume (ft³)",
ylab = "Densidad",
col = "#FF6347")
x <- seq(min(volpasajeros2d), max(volpasajeros2d), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "blue", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
## [20] 190
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
## [20] 200
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(volpasajeros2d)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 7.027915e+13
## [1] 27.58711
## [1] FALSE
Modelo Log-Normal:
HistogramaLogNormal <- hist(volpasajeros2d, freq = FALSE,
main = "Gráfica No.68: Histograma de
2D Passenger Volume con Curva Log-Normal",
xlab = "2D Passenger Volume (ft³)",
ylab = "Densidad",
col = "#FF6347")
x <- seq(min(volpasajeros2d), max(volpasajeros2d), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "blue", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
## [20] 190
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
## [20] 200
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(volpasajeros2d)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 3.620147e+14
## [1] 27.58711
## [1] FALSE
# Limpieza de datos
volequipaje2d <- datos$X2D.Luggage.Volume
volequipaje2d <- as.numeric(volequipaje2d)
volequipaje2d <- volequipaje2d[!is.na(volequipaje2d) & volequipaje2d > 0]
u <- mean(volequipaje2d)
u
## [1] 11.18998
## [1] 3.763901
# Histograma con curva normal
HistogramaNormal <- hist(volequipaje2d, freq = FALSE,
main = "Gráfica No.69: Histograma
de 2D Luggage Volume con Curva Normal",
xlab = "2D Luggage Volume (ft³)",
ylab = "Densidad",
col = "#D2B48C")
x <- seq(min(volequipaje2d), max(volequipaje2d), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40
## [1] 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(volequipaje2d)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 16460760724
df_normal <- sum(valores_validos) - 1 - 2 # -1 clases, -2 parámetros estimados
Vc_normal <- qchisq(0.95, df = df_normal)
Vc_normal
## [1] 27.58711
## [1] FALSE
Modelo Log-Normal:
## [1] 2.349035
## [1] 0.3855433
HistogramaLogNormal <- hist(volequipaje2d, freq = FALSE,
main = "Gráfica No.70: Histograma
de 2D Luggage Volume con Curva Log-Normal",
xlab = "2D Luggage Volume (ft³)",
ylab = "Densidad",
col = "#D2B48C")
x <- seq(min(volequipaje2d), max(volequipaje2d), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40
## [1] 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) - plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(volequipaje2d)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 1968.986
## [1] 27.58711
## [1] FALSE
# Limpieza de datos
volpasajeros4d <- datos$X4D.Passenger.Volume
volpasajeros4d <- as.numeric(volpasajeros4d)
volpasajeros4d <- volpasajeros4d[!is.na(volpasajeros4d) & volpasajeros4d > 0]
u <- mean(volpasajeros4d)
u
## [1] 95.43927
## [1] 8.653147
HistogramaNormal <- hist(volpasajeros4d, freq = FALSE,
main = "Gráfica No.71: Histograma
de 4D Passenger Volume con Curva Normal",
xlab = "4D Passenger Volume (ft³)",
ylab = "Densidad",
col = "#00FF7F")
x <- seq(min(volpasajeros4d), max(volpasajeros4d), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
## [20] 190
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
## [20] 200
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(volpasajeros4d)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 6.854797e+19
## [1] 23.68479
## [1] FALSE
Modelo Log-Normal:
## [1] 4.553899
## [1] 0.1044744
HistogramaLogNormal <- hist(volpasajeros4d, freq = FALSE,
main = "Gráfica No.72: Histograma de
4D Passenger Volume con Curva Log-Normal",
xlab = "4D Passenger Volume (ft³)",
ylab = "Densidad",
col = "#00FF7F")
x <- seq(min(volpasajeros4d), max(volpasajeros4d), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180
## [20] 190
## [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
## [20] 200
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(volpasajeros4d)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 6.845194e+99
## [1] 27.58711
## [1] FALSE
# Limpieza de datos
volpequipaje4d <- datos$X4D.Luggage.Volume
volpequipaje4d <- as.numeric(volpequipaje4d)
volpequipaje4d <- volpequipaje4d[!is.na(volpequipaje4d) & volpequipaje4d > 0]
u <- mean(volpequipaje4d)
u
## [1] 17.39152
## [1] 8.467823
HistogramaNormal <- hist(volpequipaje4d, freq = FALSE,
main = "Gráfica No.73: Histograma
de 4D Luggage Volume con Curva Normal",
xlab = "4D Luggage Volume (ft³)",
ylab = "Densidad",
col = "steelblue1")
x <- seq(min(volpequipaje4d), max(volpequipaje4d), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 5 10 15 20 25 30 35 40 45 50
## [1] 5 10 15 20 25 30 35 40 45 50 55
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(volpequipaje4d)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 20779.14
df_normal <- sum(valores_validos) - 1 - 2 # -1 clases, -2 parámetros estimados
Vc_normal <- qchisq(0.95, df = df_normal)
Vc_normal
## [1] 15.50731
## [1] FALSE
Modelo Log-Normal:
## [1] 2.769246
## [1] 0.3915995
HistogramaLogNormal <- hist(volpequipaje4d, freq = FALSE,
main = "Gráfica No.74: Histograma
de 4D Luggage Volume con Curva Log-Normal",
xlab = "4D Luggage Volume (ft³)",
ylab = "Densidad",
col = "steelblue1")
x <- seq(min(volpequipaje4d), max(volpequipaje4d), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 5 10 15 20 25 30 35 40 45 50
## [1] 5 10 15 20 25 30 35 40 45 50 55
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(volpequipaje4d)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 5661.281
## [1] 15.50731
## [1] FALSE
# Limpieza de datos
volpasajeros <- datos$Hatchback.Passenger.Volume
volpasajeros <- as.numeric(volpasajeros)
volpasajeros <- volpasajeros[!is.na(volpasajeros) & volpasajeros > 0]
u <- mean(volpasajeros)
u
## [1] 85.53276
## [1] 8.930174
# Histograma y curva normal
HistogramaNormal <- hist(volpasajeros, freq = FALSE,
main = "Gráfica No.75: Histograma
de Hatchback Passenger Volume con Curva Normal",
xlab = "Hatchback Passenger Volume (ft³)",
ylab = "Densidad",
col = "#FFFAFA")
x <- seq(min(volpasajeros), max(volpasajeros), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
## [1] 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(volpasajeros)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 8299.69
## [1] 16.91898
## [1] FALSE
Modelo Log-Normal:
## [1] 4.443429
## [1] 0.10573
HistogramaLogNormal <- hist(volpasajeros, freq = FALSE,
main = "Gráfica No.76: Histograma
de Hatchback Passenger Volume con Curva Log-Normal",
xlab = "Hatchback Passenger Volume (ft³)",
ylab = "Densidad",
col = "#FFFAFA")
x <- seq(min(volpasajeros), max(volpasajeros), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190
## [1] 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(volpasajeros)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 238918868137
## [1] 22.36203
## [1] FALSE
# Limpieza de datos
volequipaje <- datos$Hatchback.Luggage.Volume
volequipaje <- as.numeric(volequipaje)
volequipaje <- volequipaje[!is.na(volequipaje) & volequipaje > 0]
u <- mean(volequipaje)
u
## [1] 16.65719
## [1] 6.910848
HistogramaNormal <- hist(volequipaje, freq = FALSE,
main = "Gráfica No.77: Histograma
de Hatchback Luggage Volume con Curva Normal",
xlab = "Hatchback Luggage Volume (ft³)",
ylab = "Densidad",
col = "#EEAEEE")
x <- seq(min(volequipaje), max(volequipaje), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 5 10 15 20 25 30 35 40 45
## [1] 5 10 15 20 25 30 35 40 45 50
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(volequipaje)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 3476.215
## [1] 14.06714
## [1] FALSE
Modelo Log-Normal:
## [1] 2.739865
## [1] 0.3749482
HistogramaLogNormal <- hist(volequipaje, freq = FALSE,
main = "Gráfica No.78: Histograma
de Hatchback Luggage Volume con Curva Log-Normal",
xlab = "Hatchback Luggage Volume (ft³)",
ylab = "Densidad",
col = "#EEAEEE")
x <- seq(min(volequipaje), max(volequipaje), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 5 10 15 20 25 30 35 40 45
## [1] 5 10 15 20 25 30 35 40 45 50
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(volequipaje)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 551.4551
## [1] 14.06714
## [1] FALSE
# Limpieza de datos
mpgurbano <- datos$Composite.City.MPG
mpgurbano <- as.numeric(mpgurbano)
mpgurbano <- mpgurbano[!is.na(mpgurbano) & mpgurbano > 0]
u <- mean(mpgurbano)
u
## [1] 48.2
## [1] 20.35482
HistogramaNormal <- hist(mpgurbano, freq = FALSE,
main = "Gráfica No.79: Histograma
de Composite City MPG con Curva Normal",
xlab = "Composite City MPG",
ylab = "Densidad",
col = "#FFA500")
x <- seq(min(mpgurbano), max(mpgurbano), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90
## [1] 20 30 40 50 60 70 80 90 100
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(mpgurbano)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 51.08317
## [1] 12.59159
## [1] FALSE
Modelo Log-Normal:
## [1] 3.784142
## [1] 0.4407043
HistogramaLogNormal <- hist(mpgurbano, freq = FALSE,
main = "Gráfica No.80: Histograma
de Composite City MPG con Curva Log-Normal",
xlab = "Composite City MPG",
ylab = "Densidad",
col = "#FFA500")
x <- seq(min(mpgurbano), max(mpgurbano), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80 90
## [1] 20 30 40 50 60 70 80 90 100
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(mpgurbano)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 44.99491
## [1] 12.59159
## [1] FALSE
# Limpieza de datos
mpgcompuesto <- datos$Composite.Highway.MPG
mpgcompuesto <- as.numeric(mpgcompuesto)
mpgcompuesto <- mpgcompuesto[!is.na(mpgcompuesto) & mpgcompuesto > 0]
u <- mean(mpgcompuesto)
u
## [1] 47.43077
## [1] 15.06649
HistogramaNormal <- hist(mpgcompuesto, freq = FALSE,
main = "Gráfica No.81: Histograma
de Composite Highway MPG con Curva Normal",
xlab = "Composite Highway MPG",
ylab = "Densidad",
col = "#CD8C95")
x <- seq(min(mpgcompuesto), max(mpgcompuesto), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 20 30 40 50 60 70 80
## [1] 30 40 50 60 70 80 90
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(mpgcompuesto)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 6.407509
## [1] 9.487729
## [1] TRUE
Modelo Log-Normal:
## [1] 3.807732
## [1] 0.3293016
HistogramaLogNormal <- hist(mpgcompuesto, freq = FALSE,
main = "Gráfica No.82: Histograma
de Composite Highway MPG con Curva Log-Normal",
xlab = "Composite Highway MPG",
ylab = "Densidad",
col = "#CD8C95")
x <- seq(min(mpgcompuesto), max(mpgcompuesto), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 20 30 40 50 60 70 80
## [1] 30 40 50 60 70 80 90
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(mpgcompuesto)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 3.599147
## [1] 9.487729
## [1] TRUE
# Limpieza de datos
mpgcompuestocomb <- datos$Composite.Combined.MPG
mpgcompuestocomb <- as.numeric(mpgcompuestocomb)
mpgcompuestocomb <- mpgcompuestocomb[!is.na(mpgcompuestocomb) & mpgcompuestocomb > 0]
u <- mean(mpgcompuestocomb)
u
## [1] 47.67692
## [1] 17.7756
HistogramaNormal <- hist(mpgcompuestocomb, freq = FALSE,
main = "Gráfica No.83: Histograma
de Composite Combined MPG con Curva Normal",
xlab = "Composite Combined MPG",
ylab = "Densidad",
col = "#FFFACD")
x <- seq(min(mpgcompuestocomb), max(mpgcompuestocomb), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80
## [1] 20 30 40 50 60 70 80 90
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(mpgcompuestocomb)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 24.42201
## [1] 11.0705
## [1] FALSE
Modelo Log-Normal:
## [1] 3.793167
## [1] 0.3887003
HistogramaLogNormal <- hist(mpgcompuestocomb, freq = FALSE,
main = "Gráfica No.84: Histograma
de Composite Combined MPG con Curva Log-Normal",
xlab = "Composite Combined MPG",
ylab = "Densidad",
col = "#FFFACD")
x <- seq(min(mpgcompuestocomb), max(mpgcompuestocomb), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 10 20 30 40 50 60 70 80
## [1] 20 30 40 50 60 70 80 90
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(mpgcompuestocomb)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 26.49009
## [1] 11.0705
## [1] FALSE
# Limpieza de datos
alcance <- datos$Range..FT1.
alcance <- as.numeric(alcance)
alcance <- alcance[!is.na(alcance) & alcance > 0]
u <- mean(alcance)
u
## [1] 134.6015
## [1] 84.03164
HistogramaNormal <- hist(alcance, freq = FALSE,
main = "Gráfica No.85: Histograma
de Range (FT1) con Curva Normal",
xlab = "Range (FT1)",
ylab = "Densidad",
col = "#B4EEB4")
x <- seq(min(alcance), max(alcance), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300
## [1] 50 100 150 200 250 300 350
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(alcance)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 136.8458
## [1] 9.487729
## [1] FALSE
Modelo Log-Normal:
## [1] 4.714095
## [1] 0.6135099
HistogramaLogNormal <- hist(alcance, freq = FALSE,
main = "Gráfica No.86: Histograma
de Range (FT1) con Curva Log-Normal",
xlab = "Range (FT1)",
ylab = "Densidad",
col = "#B4EEB4")
x <- seq(min(alcance), max(alcance), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300
## [1] 50 100 150 200 250 300 350
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(alcance)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 94.64621
## [1] 9.487729
## [1] FALSE
# Limpieza de datos
alcancecity <- datos$City.Range..FT1.
alcancecity <- as.numeric(alcancecity)
alcancecity <- alcancecity[!is.na(alcancecity) & alcancecity > 0]
u <- mean(alcancecity)
u
## [1] 153.2607
## [1] 80.26296
HistogramaNormal <- hist(alcancecity, freq = FALSE,
main = "Gráfica No.87: Histograma
de City Range (FT1) con Curva Normal",
xlab = "City Range (FT1)",
ylab = "Densidad",
col = "#EEAD0E")
x <- seq(min(alcancecity), max(alcancecity), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300
## [1] 50 100 150 200 250 300 350
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(alcancecity)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 101.805
## [1] 9.487729
## [1] FALSE
Modelo Log-Normal:
## [1] 4.891591
## [1] 0.5356542
HistogramaLogNormal <- hist(alcancecity, freq = FALSE,
main = "Gráfica No.88: Histograma
de City Range (FT1) con Curva Log-Normal",
xlab = "City Range (FT1)",
ylab = "Densidad",
col = "#EEAD0E")
x <- seq(min(alcancecity), max(alcancecity), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300
## [1] 50 100 150 200 250 300 350
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(alcancecity)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
df_log <- sum(valores_validos_log) - 1 - 2
Vc_log <- qchisq(0.95, df = df_log)
Vc_log
## [1] 9.487729
## [1] FALSE
# Limpieza de datos
autopista <- datos$Highway.Range..FT1.
autopista <- as.numeric(autopista)
autopista <- autopista[!is.na(autopista) & autopista > 0]
u <- mean(autopista)
u
## [1] 150.7251
## [1] 92.89936
# Histograma y curva normal
HistogramaNormal <- hist(autopista, freq = FALSE,
main = "Gráfica No.89: Histograma
de Highway Range (FT1) con Curva Normal",
xlab = "Highway Range (FT1)",
ylab = "Densidad",
col = "#8B7355")
x <- seq(min(autopista), max(autopista), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300
## [1] 50 100 150 200 250 300 350
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(autopista)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 149.6588
## [1] 9.487729
## [1] FALSE
Modelo Log-Normal:
## [1] 4.816218
## [1] 0.6403917
HistogramaLogNormal <- hist(autopista, freq = FALSE,
main = "Gráfica No.90: Histograma
de Highway Range (FT1) con Curva Log-Normal",
xlab = "Highway Range (FT1)",
ylab = "Densidad",
col = "#8B7355")
x <- seq(min(autopista), max(autopista), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300
## [1] 50 100 150 200 250 300 350
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(autopista)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 111.4179
## [1] 9.487729
## [1] FALSE
## Warning: NAs introducidos por coerción
## [1] 282.4438
## [1] 79.10371
HistogramaNormal <- hist(alcance2, freq = FALSE,
main = "Gráfica No.91: Histograma
de Range (FT2) con Curva Normal",
xlab = "Range (FT2)",
ylab = "Densidad",
col = "#C1CDCD")
x <- seq(min(alcance2), max(alcance2), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300 350 400
## [1] 50 100 150 200 250 300 350 400 450
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(alcance2)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 2496.866
## [1] 12.59159
## [1] FALSE
Modelo Log-Normal:
## [1] 5.528548
## [1] 0.660844
HistogramaLogNormal <- hist(alcance2, freq = FALSE,
main = "Gráfica No.92: Histograma
de Range (FT2) con Curva Log-Normal",
xlab = "Range (FT2)",
ylab = "Densidad",
col = "#C1CDCD")
x <- seq(min(alcance2), max(alcance2), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 50 100 150 200 250 300 350 400
## [1] 50 100 150 200 250 300 350 400 450
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(alcance2)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 2443.823
## [1] 12.59159
## [1] FALSE
# Limpieza de datos
rangocity <- datos$City.Range..FT2.
rangocity <- as.numeric(rangocity)
rangocity <- rangocity[!is.na(rangocity) & rangocity > 0]
lambda <- 1 / mean(rangocity)
lambda
## [1] 0.03878411
HistExp <- hist(rangocity, freq = FALSE,
main = "Gráfica No.93: Histograma
de City Range (FT2) con Curva Exponencial",
xlab = "City Range (FT2)",
ylab = "Densidad",
col = "darkolivegreen1")
x <- seq(min(rangocity), max(rangocity), 0.01)
lines(x, dexp(x, rate = lambda), col = "red", lwd = 2)
Test:
## [1] 10 20 30 40 50 60 70 80 90 100
## [1] 20 30 40 50 60 70 80 90 100 110
Pexp <- numeric(length(FO))
for (k in 1:length(FO)) {
Pexp[k] <- pexp(limsup[k], rate = lambda) - pexp(liminf[k], rate = lambda)
}
FEexp <- Pexp * length(rangocity)
valores_validos <- FEexp > 0
X2_exp <- sum((FO[valores_validos] - FEexp[valores_validos])^2 / FEexp[valores_validos])
X2_exp
## [1] 40.79176
## [1] 15.50731
## [1] FALSE
# Limpieza de datos
autoalcance <- datos$Highway.Range..FT2.
autoalcance <- as.numeric(autoalcance)
autoalcance <- autoalcance[!is.na(autoalcance) & autoalcance > 0]
u <- mean(autoalcance)
u
## [1] 23.48428
## [1] 15.96889
HistogramaNormal <- hist(autoalcance, freq = FALSE,
main = "Gráfica No.94: Histograma
de Highway Range (FT2) con Curva Normal",
xlab = "Highway Range (FT2)",
ylab = "Densidad",
col = "#FFD700")
x <- seq(min(autoalcance), max(autoalcance), 0.01)
lines(x, dnorm(x, mean = u, sd = sigma), col = "red", lwd = 2)
Test:
FO <- HistogramaNormal$counts
liminf <- HistogramaNormal$breaks[-length(HistogramaNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90
## [1] 10 20 30 40 50 60 70 80 90 100
P <- numeric(length(FO))
for (i in 1:length(FO)) {
P[i] <- pnorm(limsup[i], mean = u, sd = sigma) - pnorm(liminf[i], mean = u, sd = sigma)
}
FE <- P * length(autoalcance)
valores_validos <- FE > 0
X2_normal <- sum((FO[valores_validos] - FE[valores_validos])^2 / FE[valores_validos])
X2_normal
## [1] 1117.535
## [1] 14.06714
## [1] FALSE
Modelo Log-Normal:
## [1] 2.995425
## [1] 0.5334381
HistogramaLogNormal <- hist(autoalcance, freq = FALSE,
main = "Gráfica No.95: Histograma
de Highway Range (FT2) con Curva Log-Normal",
xlab = "Highway Range (FT2)",
ylab = "Densidad",
col = "#FFD700")
x <- seq(min(autoalcance), max(autoalcance), 0.01)
lines(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), col = "red", lwd = 2)
Test:
FO <- HistogramaLogNormal$counts
liminf <- HistogramaLogNormal$breaks[-length(HistogramaLogNormal$breaks)]
liminf
## [1] 0 10 20 30 40 50 60 70 80 90
## [1] 10 20 30 40 50 60 70 80 90 100
Plog <- numeric(length(FO))
for (j in 1:length(FO)) {
Plog[j] <- plnorm(limsup[j], meanlog = ulog, sdlog = sigmalog) -
plnorm(liminf[j], meanlog = ulog, sdlog = sigmalog)
}
FElog <- Plog * length(autoalcance)
valores_validos_log <- FElog > 0
X2_log <- sum((FO[valores_validos_log] - FElog[valores_validos_log])^2 / FElog[valores_validos_log])
X2_log
## [1] 40.30501
## [1] 14.06714
## [1] FALSE