summary(cars)
## speed dist
## Min. : 4.0 Min. : 2.00
## 1st Qu.:12.0 1st Qu.: 26.00
## Median :15.0 Median : 36.00
## Mean :15.4 Mean : 42.98
## 3rd Qu.:19.0 3rd Qu.: 56.00
## Max. :25.0 Max. :120.00
tablaVida <- function(x.sup,Sx, mx){
# NO TOCAR=== # Configuracionesy calculos más avanzados oldOp <- options() digs <- nchar(max(Sx)) options(digits = digs) amplitud <- x.sup - c(0,x.sup[-length(x.sup)]) ex <- numeric(length(Sx) ) for( i in 1:length(Sx) ){ ex[i] <- sum(Sx[i:length(Sx)])/Sx[i]-0.5*amplitud[i] }
Dx <- Sx[-length(Sx)] - Sx[2:length(Sx)] Dx[length(Sx)] <- NA lx <- Sx/Sx[1] dx <- lx[-length(lx)] - lx[2:length(lx)] dx[length(lx)] <- NA qx <- dx/lx mxlx <- mxlx xmxlx <- (x.sup-amplitud/2)mx*lx R0 <- sum(mxlx) Tc <- sum(xmxlx)
#Regresar valores calculados val = data.frame(x = x.sup, S_x = Sx, D_x = Dx, l_x = lx, d_x = dx, q_x = qx, e_x = ex)
colnames(val) <- c(“\(x\)”, “\(S_x\)”, “\(D_x\)”, “\(l_x\)”, “\(d_x\)”, “\(q_x\)”, “\(e_x\)”)
return(list( val, R0 = R0, Tc = Tc
)) options(oldOp) }
Sx <- numeric(4) for(i in 1:4){
Sx[i] <- pop[(i+2),i] } aqData <- tablaVida(x.sup = 1:4, Sx = Sx, mx = 0) aqData <- as.data.frame(aqData) head(aqData)
library(readxl)
library(survival)
datos <- data.frame( fecha_nacimiento = as.Date(c(“1980-01-15”, “1975-03-20”, “1962-08-10”, “1990-05-05”)), fecha_defuncion = as.Date(c(“2020-06-30”, “2022-04-15”, “2023-10-20”, NA)) # NA para personas vivas )
View(datos)
datos\(edad_muerte <- ifelse(is.na(datos\)fecha_defuncion), as.numeric(difftime(Sys.Date(), datos\(fecha_nacimiento, units = "days")), as.numeric(difftime(datos\)fecha_defuncion, datos$fecha_nacimiento, units = “days”)))
supervivencia <- Surv(time = datos\(edad_muerte, event = !is.na(datos\)fecha_defuncion))
km_fit <- survfit(supervivencia ~ 1)
summary(km_fit)
plot(km_fit, main = “Curva de Supervivencia”)
library(survival) tabla_vida
tabla_vida\(Nacimiento <- as.Date(tabla_vida\)Nacimiento) tabla_vida\(Muerte <- as.Date(tabla_vida\)Muerte)
tabla_vida\(edad_muerte <- ifelse(is.na(tabla_vida\)Muerte), as.numeric(difftime(Sys.Date(), tabla_vida\(Nacimiento, units = "days")), as.numeric(difftime(tabla_vida\)Muerte, tabla_vida$Nacimiento, units = “days”)))
supervivencia <- Surv(time = tabla_vida\(edad_muerte/365, event = !is.na(tabla_vida\)Muerte))
km_fit <- survfit(supervivencia ~ 1) plot(km_fit, main = “Curva de Supervivencia”)
library(dplyr)
tabla_vida_m<-tabla_vida%>% filter(Sexo == “M” )
View(tabla_vida_m)
tabla_vida_f <- tabla_vida %>% filter(Sexo == “F”) View(tabla_vida_f)