Ejercicio:
El objetivo de está práctica será:
- Calcular la función de riesgo
- Calcular la función de riesgo acumulado para el caso discreto
- Proporcionar las gráficas necesarias.
de cada uno de los archivos que se nos proporcionaron.
Si \(T\),es una variable aleatoria discretaque toma valores \(0<t_1<t_2,...\) Entonces la función de Probabilidad de \(T\) es \[ f(t)=\left \{ \begin{matrix} \mathbb{P}(T=t_j) & {si }& t=t_j,j=1,2,...\\ 0 & \mbox{en otro caso}\end{matrix}\right. \] .Por lo que su función de supervivencia está dada por:
Función de Riesgo
Riesgo acumulado caso discreto
\[
H(t)=\sum_{k:u_k\le t}h(u_k)
\] .
Alternativa de Riesgo acumulado
\[
H(t)=-\sum_{k:u_k\le t}log(1-h(u_k))
\] .
Archivos:
Las librerías que ocuparemos seran:
- library(readr)
- library(dplyr)
- library(tibble)
- library(ggplot2)
- library(plotly)
Muestras Corrosivas
Los datos corresponden al tiempo de vida en segundos de un disco magnético que es expuesto a una cierta mezcla corrosiva.
#install.packages("readr")
library("readr")
#install.packages("dplyr")
library("dplyr")
#install.packages("tibble")
library("tibble")
#Leemos los datos para el experimento de mezclas
mixture<- read_tsv("corrosive_mixture.csv",skip = 0,col_names = FALSE)
#Leemos nuestros datos
mixture2<- data.frame(tiempo=seq(0,2.3, by=.1), supervivencia=mixture$X1)
#Acomodamos, con intervalos de t=.1
newmix<- data.frame(tiempo=seq(0,2.3, by=.1),
supervivencia=1-mixture2$supervivencia) #Y ordenamos en un data frame
summary(newmix) #Analizamos un poco nuestros datos.## tiempo supervivencia
## Min. :0.000 Min. :0.00000
## 1st Qu.:0.575 1st Qu.:0.05271
## Median :1.150 Median :0.88265
## Mean :1.150 Mean :0.60942
## 3rd Qu.:1.725 3rd Qu.:0.99947
## Max. :2.300 Max. :1.00000
library(ggplot2)
ggplot(data = mezcla, aes(x = tiempo, y = surv)) +
geom_step(color = "navyblue") +
ggtitle("Gráfica de Supervivencia de Mezcla Corrosiva")#Vamos a calcular la función de riesgo
riesgo1 <- mezcla %>%
mutate(Surv_aux = lead(surv)) %>%
mutate(quotien = Surv_aux/surv) %>% # Hacemos el cociente
mutate(Risk_rate = 1-quotien) %>% #Obtenemos la tasa de fallo
head(-1) library(ggplot2)
ggplot(data = riesgo1, aes(x = tiempo, y = quotien)) +
geom_step(color = "darkorange1") +
ggtitle("Gráfica de Riesgo Mezclas")#Ahora calculemos la función de riesgo acumulado
riesgo1$Risk_rate %>%
cumsum() %>%
as_tibble() %>%
mutate(Time = row_number()) %>%
select(Time, value) %>%
rename("t" = Time, "H(t)" = value)## # A tibble: 23 x 2
## t `H(t)`
## <int> <dbl>
## 1 1 3.90e-10
## 2 2 9.99e- 8
## 3 3 2.56e- 6
## 4 4 2.56e- 5
## 5 5 1.52e- 4
## 6 6 6.55e- 4
## 7 7 2.25e- 3
## 8 8 6.54e- 3
## 9 9 1.67e- 2
## 10 10 3.87e- 2
## # … with 13 more rows
library(ggplot2)
ggplot(data = riesgo1, aes(x = tiempo, y = cumsum(Risk_rate))) +
geom_step(color = "deeppink1") +
ggtitle("Gráfica de Riesgo Acumulado de Mezclas")
Videojuegos
Los datos corresponden al tiempo que dedicaron un grupo de niños a jugar videojuegos en su primer fin de semana de vacaciones.
#Leemos los datos para el experimento de videojuegos
videogames<- read_tsv("videogames.csv",skip = 0,col_names = FALSE) #Leemos nuestros datos
videogames2<- data.frame(tiempo=seq(0,15, by= 1), supervivencia=videogames$X1) #Acomodamos, con intervalos de t=.1
newgames<- data.frame(tiempo=seq(0,15, by= 1), supervivencia=1-videogames2$supervivencia) #Y ordenamos en un data frame
summary(newgames) #Analizamos nuestros datos.## tiempo supervivencia
## Min. : 0.00 Min. :0.001638
## 1st Qu.: 3.75 1st Qu.:0.005166
## Median : 7.50 Median :0.020352
## Mean : 7.50 Mean :0.138642
## 3rd Qu.:11.25 3rd Qu.:0.110990
## Max. :15.00 Max. :1.000000
library(ggplot2)
ggplot(data = videojuego, aes(x = tiempo, y = surv)) +
geom_step(color = "green1") +
ggtitle("Gráfica de Supervivencia de Videojuegos")#Vamos a calcular la función de riesgo
riesgo3 <- videojuego %>%
mutate(Surv_aux = lead(surv)) %>%
mutate(quotien = Surv_aux/surv) %>% # Hacemos el cociente
mutate(Risk_rate = 1-quotien) %>% #Obtenemos la tasa de fallo
head(-1) library(ggplot2)
ggplot(data = riesgo3, aes(x = tiempo, y = quotien)) +
geom_step(color = "olivedrab") +
ggtitle("Grafica de Riesgo Videojuegos")#Ahora calculemos la función de riesgo acumulado
riesgo3$Risk_rate %>%
cumsum() %>%
as_tibble() %>%
mutate(Time = row_number()) %>%
select(Time, value) %>%
rename("t" = Time, "H(t)" = value)## # A tibble: 15 x 2
## t `H(t)`
## <int> <dbl>
## 1 1 0.487
## 2 2 0.943
## 3 3 1.37
## 4 4 1.78
## 5 5 2.16
## 6 6 2.52
## 7 7 2.87
## 8 8 3.20
## 9 9 3.51
## 10 10 3.82
## 11 11 4.10
## 12 12 4.38
## 13 13 4.65
## 14 14 4.91
## 15 15 5.16
Mail
Los datos corresponden al tiempo que un empleado de correos pasa con su cliente.
#Ahora leemos el archivo de mail
mail<- read_tsv("mail.csv",skip = 0,col_names = FALSE) #Leemos nuestros datos
mail2<- data.frame(tiempo=c(1:30), supervivencia=mail$X1) #Acomodamos, con intervalos de t=.1
#mixture2 <- arrange(mixture2, -supervivencia) #Reordenamos los datos para trabajar con ellos.
newmail<- data.frame(tiempo=c(0:30), supervivencia=c(1, 1-mail2$supervivencia)) #Y ordenamos en un data frame
summary(newmail) #Analizamos un poco nuestros datos.## tiempo supervivencia
## Min. : 0.0 Min. :0.01376
## 1st Qu.: 7.5 1st Qu.:0.04029
## Median :15.0 Median :0.11732
## Mean :15.0 Mean :0.23943
## 3rd Qu.:22.5 3rd Qu.:0.34339
## Max. :30.0 Max. :1.00000
library(ggplot2)
ggplot(data = correo, aes(x = tiempo, y = surv)) +
geom_step(color = "darkgoldenrod4") +
ggtitle("Gráfica de Supervivencia de Clientes")#Vamos a calcular la función de riesgo
riesgo2 <- correo %>%
mutate(Surv_aux = lead(surv)) %>%
mutate(quotien = Surv_aux/surv) %>% # Hacemos el cociente
mutate(Risk_rate = 1-quotien) %>% #Obtenemos la tasa de fallo
head(-1) library(ggplot2)
ggplot(data = riesgo2, aes(x = tiempo, y = quotien)) +
geom_step(color = "tan4") +
ggtitle("Grafica de Riesgo de Clientes")#Ahora calculemos la función de riesgo acumulado
riesgo2$Risk_rate %>%
cumsum() %>%
as_tibble() %>%
mutate(Time = row_number()) %>%
select(Time, value) %>%
rename("t" = Time, "H(t)" = value)## # A tibble: 30 x 2
## t `H(t)`
## <int> <dbl>
## 1 1 0.133
## 2 2 0.266
## 3 3 0.399
## 4 4 0.532
## 5 5 0.666
## 6 6 0.799
## 7 7 0.932
## 8 8 1.06
## 9 9 1.20
## 10 10 1.33
## # … with 20 more rows
library(ggplot2)
ggplot(data = riesgo2, aes(x = tiempo, y = cumsum(Risk_rate))) +
geom_step(color = "orchid4") +
ggtitle("Grafica de Riesgo Acumulado de Clientes")
Autos
Los datos corresponden al tiempo en segundos que tardar en pasar 100 automóviles por un cierto punto en una carretera.
#Leemos los datos para el experimento del tiempo en automoviles
auto<- read_tsv("auto.csv",skip = 0,col_names = FALSE) #Leemos nuestros datos
auto2<- data.frame(tiempo=seq(0,80, by= 1), supervivencia=auto$X1) #Acomodamos, con intervalos de t=.1
newauto<- data.frame(tiempo=seq(0,80, by= 1), supervivencia=1-auto2$supervivencia) #Y ordenamos en un data frame
summary(newauto) #Analizamos un poco nuestros datos.## tiempo supervivencia
## Min. : 0 Min. :0.0000001
## 1st Qu.:20 1st Qu.:0.0278637
## Median :40 Median :0.9828917
## Mean :40 Mean :0.6234568
## 3rd Qu.:60 3rd Qu.:1.0000000
## Max. :80 Max. :1.0000000
#Vamos a calcular la función de riesgo
riesgo4 <- carro %>%
mutate(Surv_aux = lead(surv)) %>%
mutate(quotien = Surv_aux/surv) %>% # Hacemos el cociente
mutate(Risk_rate = 1-quotien) %>% #Obtenemos la tasa de fallo
head(-1) library(ggplot2)
ggplot(data = riesgo4, aes(x = tiempo, y = quotien)) +
geom_step(color = "turquoise1") +
ggtitle("Grafica de Riesgo de Autos")#Ahora calculemos la función de riesgo acumulado
riesgo4$Risk_rate %>%
cumsum() %>%
as_tibble() %>%
mutate(Time = row_number()) %>%
select(Time, value) %>%
rename("t" = Time, "H(t)" = value)## # A tibble: 80 x 2
## t `H(t)`
## <int> <dbl>
## 1 1 0
## 2 2 0
## 3 3 0
## 4 4 0
## 5 5 0
## 6 6 0
## 7 7 0
## 8 8 0
## 9 9 0
## 10 10 0
## # … with 70 more rows
library(ggplot2)
ggplot(data = riesgo4, aes(x = tiempo, y = cumsum(Risk_rate))) +
geom_step(color = "darksalmon") +
ggtitle("Grafica de Riesgo Acumulado de Autos")
Gráficas de los 4 archivos
library(ggplot2)
library(plotly)
plot_CS <- mezcla %>% ggplot(aes(x = tiempo, y = surv, color = "Mezcla corrosiva")) +
geom_step(data = videojuego, aes(color = "Videojuegos")) +
geom_step(data = correo, aes(color = "Clientes")) +
geom_step(data = carro, aes(color = "Autos")) +
geom_step() +
labs(y = "S(t)") +
ggtitle("Gráfica conjunto de Supervivencia") +
scale_color_manual(values = c("black", "purple","blue","red"))
ggplotly(plot_CS) %>%
layout(legend = list(orientation = 'h', y = -0.2, title=list(text='Escenario: ')))library(ggplot2)
library(plotly)
plot_CS <- riesgo1 %>% ggplot(aes(x = tiempo, y = quotien, color = "Mezcla corrosiva")) +
geom_step(data = riesgo3, aes(color = "Videojuegos")) +
geom_step(data = riesgo2, aes(color = "Clientes")) +
geom_step(data = riesgo4, aes(color = "Autos")) +
geom_step() +
labs(y = "S(t)") +
ggtitle("Gráfica conjunto de Riesgo") +
scale_color_manual(values = c("cyan1", "azure4","lawngreen","maroon4"))
ggplotly(plot_CS) %>%
layout(legend = list(orientation = 'h', y = -0.2, title=list(text='Escenario: ')))library(ggplot2)
library(plotly)
plot_CS <- riesgo1 %>% ggplot(aes(x = tiempo, y = cumsum(Risk_rate), color = "Mezcla corrosiva")) +
geom_step(data = riesgo3, aes(color = "Videojuegos")) +
geom_step(data = riesgo2, aes(color = "Clientes")) +
geom_step(data = riesgo4, aes(color = "Autos")) +
geom_step() +
labs(y = "S(t)") +
ggtitle("Gráfica conjunto de Riesgo Acumulado") +
scale_color_manual(values = c("violet", "gold","deepskyblue","forestgreen"))
ggplotly(plot_CS) %>%
layout(legend = list(orientation = 'h', y = -0.2, title=list(text='Escenario: ')))Integrantes:
- Ballesteros Fuentes Iván
- Flores Segura Uriel
- Loredo Olvera Luis Fernando
- Rivero Cortés José Julio
- Sierra Barajas Fernanda
- Toledo Serna Odilia Karime