Examen de la segunda unidad de competencia.
1.- ¿Qué es la estadística y que aplicaciones tiene en ingeniería (según su ingeniería)?
La estadística se define como el lenguaje universal de la ciencia.
Implica información, números para resumir esta información y la interpretación de la misma. El término estadística conlleva varios significados para distintos campos de aplicación. Para algunos resulta una manera de aventajarse a las demás mediante el conocimiento estadístico. Para otros tantos es un medio para recolectar y representar grandes cantidades de información. Por último tenemos al grupo que la ve como una manera de tomar decisiones y realizar predicciones.
De forma general podemos decir que la estadística es la ciencia que se encarga de recolectar, describir e interpretar datos.
En la Ingeniería de Software la estadística tiene diferentes y muy importantes aplicaciones como las siguientes:
Data Science
Big data
Inteligencia Artificial
Modelos de predicción
2.- Enliste y defina los tipos de variables usados en estadística, de 2 ejemplos de cada uno. Defina distribución de frecuencia y explique que es la distribución normal.
Cualitativas o de atributos: No se pueden medir numéricamente. (nacionalidad, color de piel)
Cuantitativas: Tienen un valor numérico atribuido y se dividen en 2 tipos;
- Discretas: Solo pueden tomar valores contables.(número de personas, cantidad de carros)
- Continuas: Pueden tomar cualquier valor real dentro de un intervalo.(La velocidad de un vehículo, el peso de una persona)
Distribución de frecuencia
Es la representación estructurada en forma de tabla o gráfica de toda la información que se ha recogido sobre la variable que se estudia.
Distribución normal
La distribución normal también conocida como campana de Gauss, es una distribucíon donde las desviaciones estándar sucesivas con respecto a la media establercen valores de referencia para estimar el porcentaje de observaciones de los datos.
Importe los datos del archivo de Excel ‘pozos’ y conteste lo siguiente usando R:
Estos datos son: Datos de pH y Temperatura de pozos de agua subterránea
Se elaborarán estos incisos 1 vez para pH y otra para Temperatura
library(pacman)
p_load(rmdformats,readr,readxl,ggplot2,plotly,DT,xfun,gridExtra,leaflet,TSstudio,modeest,fdth)
Importamos datos:
pozos <- read_excel("pozos.xlsx")
pozos
## # A tibble: 293 x 2
## PH TEMP
## <dbl> <dbl>
## 1 6.8 28.5
## 2 6.9 29.2
## 3 6.8 28.9
## 4 7.1 29.4
## 5 6.6 28.3
## 6 6.8 28.4
## 7 6.5 28
## 8 6.9 27.5
## 9 7 28.7
## 10 7 28.6
## # ... with 283 more rows
A) Ordene los datos de menor a mayor, indique el valor máximo / mínimo y el rango total de datos.
- Ph’s ordenados de menor a mayor con rango de 6.1 a 7.5
pozosph <- sort(pozos$PH, FALSE)
pozosph
## [1] 6.1 6.3 6.4 6.4 6.4 6.4 6.4 6.4 6.4 6.5 6.5 6.5 6.5 6.5 6.5 6.5 6.5 6.5
## [19] 6.5 6.5 6.5 6.5 6.5 6.5 6.5 6.5 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.6
## [37] 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.6 6.7 6.7 6.7 6.7 6.7
## [55] 6.7 6.7 6.7 6.7 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8
## [73] 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8
## [91] 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8
## [109] 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.8 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9
## [127] 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9
## [145] 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 6.9 7.0 7.0
## [163] 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0
## [181] 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0
## [199] 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0
## [217] 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.0
## [235] 7.0 7.0 7.0 7.0 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1
## [253] 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.1 7.2 7.2
## [271] 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.2 7.3 7.3 7.3 7.3 7.3 7.3 7.4 7.4
## [289] 7.4 7.4 7.4 7.4 7.5
Temperaturas ordenada de menor a mayor con rango de 25.6 a 32.1
pozostemp <- sort(pozos$TEMP, FALSE)
pozostemp
## [1] 25.6 25.8 26.2 26.3 26.3 26.4 26.4 26.8 26.8 26.9 27.0 27.0 27.1 27.2 27.2
## [16] 27.3 27.3 27.3 27.3 27.4 27.4 27.4 27.4 27.4 27.5 27.5 27.5 27.5 27.5 27.5
## [31] 27.5 27.5 27.5 27.5 27.5 27.5 27.6 27.7 27.7 27.7 27.7 27.8 27.8 27.8 27.8
## [46] 27.8 27.8 27.8 27.8 27.8 27.8 27.8 27.9 27.9 27.9 27.9 27.9 27.9 27.9 27.9
## [61] 27.9 27.9 27.9 27.9 27.9 27.9 28.0 28.0 28.0 28.0 28.0 28.0 28.0 28.0 28.0
## [76] 28.0 28.0 28.0 28.0 28.0 28.0 28.0 28.0 28.0 28.1 28.1 28.1 28.2 28.2 28.2
## [91] 28.2 28.2 28.2 28.2 28.2 28.2 28.2 28.2 28.2 28.3 28.3 28.3 28.3 28.3 28.3
## [106] 28.3 28.4 28.4 28.4 28.4 28.4 28.4 28.4 28.5 28.5 28.5 28.5 28.5 28.5 28.5
## [121] 28.5 28.5 28.6 28.6 28.6 28.6 28.6 28.6 28.6 28.6 28.6 28.6 28.6 28.6 28.6
## [136] 28.6 28.6 28.6 28.6 28.6 28.6 28.7 28.7 28.7 28.7 28.7 28.7 28.7 28.7 28.7
## [151] 28.7 28.7 28.7 28.7 28.8 28.8 28.8 28.8 28.8 28.8 28.8 28.8 28.8 28.8 28.8
## [166] 28.8 28.9 28.9 28.9 28.9 28.9 28.9 28.9 28.9 28.9 28.9 28.9 28.9 28.9 28.9
## [181] 28.9 28.9 28.9 28.9 29.0 29.0 29.0 29.0 29.0 29.0 29.0 29.0 29.0 29.0 29.0
## [196] 29.0 29.0 29.0 29.1 29.1 29.1 29.1 29.1 29.1 29.1 29.1 29.1 29.1 29.1 29.2
## [211] 29.2 29.2 29.2 29.2 29.2 29.2 29.2 29.2 29.2 29.2 29.2 29.2 29.2 29.3 29.3
## [226] 29.3 29.3 29.4 29.4 29.4 29.4 29.4 29.4 29.4 29.4 29.4 29.4 29.4 29.5 29.5
## [241] 29.5 29.5 29.5 29.5 29.5 29.5 29.5 29.6 29.6 29.6 29.7 29.7 29.8 29.8 29.8
## [256] 29.8 29.8 29.8 29.9 29.9 29.9 29.9 30.0 30.0 30.0 30.0 30.0 30.0 30.1 30.1
## [271] 30.1 30.1 30.2 30.2 30.2 30.3 30.3 30.3 30.3 30.4 30.5 30.6 30.8 30.9 31.1
## [286] 31.1 31.1 31.2 31.4 31.5 31.7 31.9 32.1
B) Obtenga (el número de) los intervalos (o clases) usando la fórmula según Surges y el ancho de clase. C) Construya una tabla de frecuencias que incluya: límites de clases, frecuencia absoluta, frecuencia relativa, frecuencia relativa porcentual, frecuencia acumulada y explique a detalle que refleja esta tabla.
- Ph: 10 clases con ancho de .154
tablaph <- fdt(pozosph)
tablaph
## Class limits f rf rf(%) cf cf(%)
## [6.039,6.193) 1 0.00 0.34 1 0.34
## [6.193,6.346) 1 0.00 0.34 2 0.68
## [6.346,6.5) 7 0.02 2.39 9 3.07
## [6.5,6.653) 40 0.14 13.65 49 16.72
## [6.653,6.807) 67 0.23 22.87 116 39.59
## [6.807,6.961) 44 0.15 15.02 160 54.61
## [6.961,7.114) 108 0.37 36.86 268 91.47
## [7.114,7.268) 12 0.04 4.10 280 95.56
## [7.268,7.421) 12 0.04 4.10 292 99.66
## [7.421,7.575) 1 0.00 0.34 293 100.00
Esta tabla de frecuencias está compuesta por 10 clases que van desde 6.039 hasta 7.575. La cantidad de clases y su anchura fueron determinadas mediante la metodología de Sturges por la fórmula \(1+3.32∗log(n)\). En la misma podemos apreciar la frecuencia de ocurrencias por clase, la frecuencia relativa en comaparción contra la cantidad total de datos, la frecuencia relativa en funcionalidad de porcentajes, la frecuencia acumulada y la frecuencia acumulada en función de procentajes. En este caso con estos datos podemos apreciar que los valores tienden a concentrarse en los valores centrales por lo que podríamos determinar que estamos tratando con una distribución normal.
- Temp: 10 clases con ancho de 0.708
tablatemp <- fdt(pozostemp)
tablatemp
## Class limits f rf rf(%) cf cf(%)
## [25.344,26.052) 2 0.01 0.68 2 0.68
## [26.052,26.759) 5 0.02 1.71 7 2.39
## [26.759,27.467) 17 0.06 5.80 24 8.19
## [27.467,28.175) 63 0.22 21.50 87 29.69
## [28.175,28.883) 79 0.27 26.96 166 56.66
## [28.883,29.59) 81 0.28 27.65 247 84.30
## [29.59,30.298) 28 0.10 9.56 275 93.86
## [30.298,31.006) 9 0.03 3.07 284 96.93
## [31.006,31.713) 7 0.02 2.39 291 99.32
## [31.713,32.421) 2 0.01 0.68 293 100.00
Esta tabla de frecuencias está compuesta por 10 clases que van desde 25.344 hasta 26.052. La cantidad de clases y su anchura fueron determinadas mediante la metodología de Sturges por la fórmula \(1+3.32∗log(n)\). En la misma podemos apreciar la frecuencia de ocurrencias por clase, la frecuencia relativa en comaparción contra la cantidad total de datos, la frecuencia relativa en funcionalidad de porcentajes, la frecuencia acumulada y la frecuencia acumulada en función de procentajes.En este caso con estos datos podemos apreciar que los valores tienden a concentrarse en los valores centrales por lo que podríamos determinar que estamos tratando con una distribución normal.
D) Elabore un histograma, polígono de frecuencias, histograma de frecuencias acumulado.
Para Ph:
Histograma:
plot(tablaph, type="fh")
Polígono de frecuencias
plot(tablaph, type="fp")
Histograma de frecuencias acumulado
plot(tablaph, type="cfh")
Para Temperatura:
Histograma:
plot(tablatemp, type="fh")
Polígono de frecuencias
plot(tablatemp, type="fp")
Histograma de frecuencias acumulado
plot(tablatemp, type="cfh")
E) Obtenga la media, mediana, moda e interprete los resultados.
Para Ph:
mean(tablaph)
## [1] 6.881179
Para el Ph tenemos que el valor promedio en los pozos es de 6.88 lo que se aproxima más a 7 que vendría a ser el valor neutro en la escala de Ph
median(tablaph)
## [1] 6.913473
La mediana se aproxima mucho a la media lo que nos hace ver que en efecto estamos tratando con una distribución normal donde el pH neutro es lo normal.
fdth::mfv(tablaph)
## [1] 7.02204
Por último, para confirmar la hipótesis de nuestra distribución normal vemos que al obtener el valor de la moda nuestras 3 medidas de tendencia central son casi idénticas con mínima desviación la una de la otra, indicando que la mayoría de los pozos tienen pH neutro y solo son algunos específicos que se salen de estas condiciones.
Para temperatura:
mean(tablatemp)
## [1] 28.72671
Para las temperaturas de los pozos 28 grados como media es un valor completamente dentro de lo común de un pozo a temperatura ambiente.
median(tablatemp)
## [1] 28.70781
La mediana, de nueva cuenta es extremadamente similar a nuestra media lo que nos encamina nuevamente a una distribución normal.
fdth::mfv(tablatemp)
## [1] 28.90823
Obteniendo la última temperatura podemos apreciar que en efecto se trata de una distribución normal donde la temperatura común es de 28 grados temperatura ambiente.
F) Obtenga la varianza y la desviación estándar, interprete los resultados. ¿Pueden estas medidas ser negativas?
Para Ph:
var(tablaph)
## [1] 0.04936057
sd(tablaph)
## [1] 0.2221724
Para el ph tenemos una varianza de 0.04 y una desviación estándar de 0.22, es decir nuestros datos están en promedio, 0.22u alejados de la media. Estas medidas no pueden ser negativas.
Para la temperatura:
var(tablatemp)
## [1] 1.065229
sd(tablatemp)
## [1] 1.032099
Para el ph tenemos una varianza de 1.06 y una desviación estándar de 1.03, es decir nuestros datos están en promedio, 1.03u alejados de la media. Estas medidas no pueden ser negativas.
G) Elabore gráfico de caja y bigote
Para Ph:
boxplot(pozosph)
La mayoría de los datos se agrupa en los valores centrales mientras que los puntos a los extremos indican que son tan escasos que no merece tomarlos en cuenta para el análisis.
Para la temperatura:
boxplot(pozostemp)
De la misma manera que el caso anterior los datos se agrupan en los valores centrales. Con una cantidad de datos mínima que no merece tomar en cuenta para el análisis en los extremos.
H) Elabora una gráfica de dispersión de pH versus temperatura, use ggplot aquí. En base a esta gráfica: ¿Considera que estas 2 variables están relacionadas?
pairs(pozos)
Aunque podríamos interpretar que estas dos variables tienen cierto grado de relación mi hipótesis sería que esto es más debido a la distribución de ambos datos que es normal, ambos grupos de datos tienden a agruparse en los valores centrales y aquí podemos apreciar como sí llegan a tocarse pero en realidad están dispersos a través del gráfico, podiendo inferir que no hay mucha relación hasta cierto punto.