#Folder de trabajo
setwd("~/pye1pm")

#Asignación #3 utilizando conjuntos de datos de R para un análisis 
#exploratorio de datos

#Para este ejemplo en particular utilizaremos datos de castores

#Paquete 
library(pacman)  #Package manager
p_load("datasets")

#Conociendo datos acerca de castores

castores <- (beaver1)


#Descripción de los datos 

#Reynolds (1994) describe una pequeña parte de un estudio de la  dinámica de la
#temperatura a largo plazo del castor Castor canadensis en el centro-norte de
#Wisconsin. La temperatura corporal se midió por telemetría cada 10 minutos para
#cuatro hembras,pero allí se usan datos de un período de menos de un día para
#cada uno de los dos animales. 

#Format
#The beaver1 data frame has 114 rows and 4 columns on body temperature
#measurements at 10 minute intervals.

#The variables are as follows:

# day
#Day of observation (in days since the beginning of 1990), December 12–13 
#(beaver1) and November 3–4 (beaver2).

#time
#Time of observation, in the form 0330 for 3:30am

#temp
#Measured body temperature in degrees Celsius.

#activ
#Indicator of activity outside the retreat.


#Conociendo lo datos

head(castores)   #Esto nos va dar las primeras 6 filas
##   day time  temp activ
## 1 346  840 36.33     0
## 2 346  850 36.34     0
## 3 346  900 36.35     0
## 4 346  910 36.42     0
## 5 346  920 36.55     0
## 6 346  930 36.69     0
dim(castores)    #Cantidad de filas y columnas
## [1] 114   4
#Medidad de tendencia central

summary(castores)
##       day             time             temp           activ        
##  Min.   :346.0   Min.   :   0.0   Min.   :36.33   Min.   :0.00000  
##  1st Qu.:346.0   1st Qu.: 932.5   1st Qu.:36.76   1st Qu.:0.00000  
##  Median :346.0   Median :1415.0   Median :36.87   Median :0.00000  
##  Mean   :346.2   Mean   :1312.0   Mean   :36.86   Mean   :0.05263  
##  3rd Qu.:346.0   3rd Qu.:1887.5   3rd Qu.:36.96   3rd Qu.:0.00000  
##  Max.   :347.0   Max.   :2350.0   Max.   :37.53   Max.   :1.00000
#valor mínimo, primer cuartil, mediana, media, tercer cuartil, valor máximo


#gráfico de caja y bigotes de la temperatura de los castores

boxplot(castores$temp)

#Medidad de dispersión de la temperatura de los castores

#Varianza
#Esto nos muestra la variabilidad de la temperatura de los castores
var(castores$temp)
## [1] 0.03741196
#desviación estándar
#Nos indica que tan dispersos están las temperaturas respecto a la media
sd(castores$temp)
## [1] 0.1934217
#gráficos de dispersión
plot(castores$temp)

#Asignación: Añadir analisis de distribución de frecuencia, tablas e histogramas

library(fdth)
## 
## Attaching package: 'fdth'
## The following objects are masked from 'package:stats':
## 
##     sd, var
library(modeest)
## 
## Attaching package: 'modeest'
## The following object is masked from 'package:fdth':
## 
##     mfv
tabla <- fdt(castores$temp, breaks = "Sturges")
tabla #Tabla de los datos de la temperatura de los castores, en los que se
##     Class limits  f   rf rf(%)  cf  cf(%)
##  [35.967,36.209)  0 0.00  0.00   0   0.00
##  [36.209,36.451)  4 0.04  3.51   4   3.51
##  [36.451,36.694) 14 0.12 12.28  18  15.79
##  [36.694,36.936) 61 0.54 53.51  79  69.30
##  [36.936,37.178) 26 0.23 22.81 105  92.11
##  [37.178,37.421)  8 0.07  7.02 113  99.12
##  [37.421,37.663)  1 0.01  0.88 114 100.00
##  [37.663,37.905)  0 0.00  0.00 114 100.00
#muestra la frecuecia absoluta, frecuencia relativa, frecuencia relativa
#porcentual, frecuencia acumulada y frecuencia acumulada porcentual


sort(castores$temp) #Se muestran los datos ordenados de menor a mayor
##   [1] 36.33 36.34 36.35 36.42 36.50 36.54 36.55 36.55 36.59 36.62 36.62 36.64
##  [13] 36.65 36.67 36.67 36.69 36.69 36.69 36.70 36.71 36.71 36.72 36.73 36.74
##  [25] 36.75 36.75 36.75 36.75 36.76 36.76 36.77 36.77 36.78 36.78 36.79 36.79
##  [37] 36.80 36.80 36.80 36.81 36.81 36.82 36.82 36.82 36.83 36.83 36.84 36.84
##  [49] 36.85 36.85 36.85 36.85 36.86 36.86 36.87 36.87 36.87 36.87 36.88 36.88
##  [61] 36.88 36.88 36.89 36.89 36.89 36.89 36.89 36.89 36.89 36.91 36.91 36.91
##  [73] 36.92 36.92 36.92 36.93 36.93 36.93 36.93 36.94 36.94 36.94 36.94 36.95
##  [85] 36.95 36.96 36.97 36.97 36.97 36.98 36.98 36.99 36.99 36.99 37.00 37.00
##  [97] 37.00 37.01 37.02 37.05 37.07 37.09 37.10 37.10 37.15 37.18 37.20 37.20
## [109] 37.20 37.21 37.23 37.24 37.25 37.53
#HISTOGRAMAS DE FRECUENCIA
#La frecuencia es la cantidad de veces que se repite un evento, en este caso 
#son los datos

#Histograma de frecuencia absoluta de los datos de temperaturas de castores
# Se muestra en forma de barras lo que son la cantidad de datos que se 
#encuentran en intervalos 
plot(tabla, type="fh")

#Histograma de frecuencia acumulada de los datos de temperaturas de castores
#Se muestra de forma sumatoria los datos anteriores, lo mismo que la 
#frecuencia absoluta, solo que sumando el dato anterior con el nuevo en el 
#siguiente intervalo
plot(tabla, type="cfh")

#Histograma de frecuencia relativa de los datos de temperaturas de castores
#Se muestra prácticamente la misma tabla que la frecuencia absoluta, con
#la única diferencia que es la proporción que representa la frecuencia absoluta
#en relación con el total.
plot(tabla, type="rfh")

#POLÍGONOS DE FRECUENCIA
#Polígono de frecuencia absoluta de los datos de temperaturas de castores
#Se muestra los mismos datos que en los histogramas, con la diferencia que 
#el gráfico este es de polígono, estos son líneas en vez de barras
#Se muestra de forma sumatoria los datos anteriores, lo mismo que la 
#frecuencia absoluta, solo que sumando el dato anterior con el nuevo en el 
#siguiente intervalo
plot(tabla, type="fp")

#Polígono de frecuencia acumulada  de los datos de temperaturas de castores
#se observa lo que son los datos 
#Se muestra de forma sumatoria los datos anteriores, lo mismo que la 
#frecuencia absoluta, solo que sumando el dato anterior con el nuevo en el 
#siguiente intervalo
plot(tabla, type="cfp")

#Polígono de frecuencia relativa  de los datos de temperaturas de castores
#Se muestra prácticamente la misma tabla que la frecuencia absoluta, con
#la única diferencia que es la proporción que representa la frecuencia absoluta
#en relación con el total.
plot(tabla, type="rfp")