datos <- read.csv("C:/Users/DANIELA SANZ/Downloads/estadisticas_vitales_mexico_2018_2021.csv")
plot(cars)
print(datos)
anio poblacion_total nacimientos_registrados defunciones_registradas
1 2018 124738000 2162535 722611
2 2019 125930000 2092214 747784
3 2020 126014024 1629211 1086743
4 2021 126705138 1912178 1122249
incremento_natural casos_covid_confirmados
1 1439924 0
2 1344430 0
3 542468 1437185
4 789929 NA
defunciones_covid_confirmadas
1 0
2 0
3 126507
4 NA
#df
nacimientos <- datos$nacimientos_registrados
total_poblacion <- datos$poblacion_total
#calculo de tasa de natalidad
tasa_natalidad <- (nacimientos/total_poblacion)*1000
#resultado
cat("tasa de natalidad:",
mean (tasa_natalidad, na.rm = TRUE),
"nacimientos 1000 habitantes durante el periodo 2018-2021\n")
tasa de natalidad: 15.49277 nacimientos 1000 habitantes durante el periodo 2018-2021
datos$tasa_natalidad <- (datos$nacimientos_registrados/ datos$poblacion_total) * 1000
datos [, c("anio", "tasa_natalidad")]
datos$tasa_natalidad <- (datos$nacimientos_registrados/ datos$poblacion_total)* 1000
#grafico
ggplot(datos, aes(x = anio, y = tasa_natalidad, fill = anio)) + geom_bar (stat = "identity") + geom_text(aes(label = round(tasa_natalidad, 2)),vjust = -0.3, size = 4) + labs(title = "tasa natalidad por año", x = "anio", y = "tasa de natalidad (por 1,000 habitantes)") + theme_classic()
#calculo de la tasa de mortalidad
tasa_mortalidad <- (datos$defunciones_registradas/datos$poblacion_total) * 1000
datos$tasa_mortalidad <- (datos$defunciones_registradas/datos$poblacion_total) * 1000
datos[, c("anio", "tasa_mortalidad")]
NA
# Resultado
cat("Tasa de mortalidad:",
mean(tasa_mortalidad, na.rm = TRUE),
"muertes por cada 1,000 habitantes durante el periodo 2018-2021\n")
Tasa de mortalidad: 7.303069 muertes por cada 1,000 habitantes durante el periodo 2018-2021
#grafico
ggplot(datos, aes(x = anio, y = tasa_mortalidad, fill = anio)) + geom_bar (stat = "identity") + geom_text(aes(label = round(tasa_mortalidad, 2)),vjust = -0.3, size = 4) + labs(title = "tasa mortalidad por año", x = "anio", y = "tasa de mortalidas(por 1,000 habitantes)") + theme_classic()
incremento_natural <- (tasa_natalidad - tasa_mortalidad)
datos$incremento_natural <- datos$tasa_natalidad - datos$tasa_mortalidad
datos[, c("anio", "incremento_natural")]
# Resultado
cat("Incremento natural",
# decidí sacar el promedio porque de la forma básica me arroja 3 vectores.
mean(incremento_natural, na.rm = TRUE),
"por cada 1,000 habitantes durante el periodo 2018-2021\n")
Incremento natural 8.189702 por cada 1,000 habitantes durante el periodo 2018-2021
str(datos)
'data.frame': 4 obs. of 10 variables:
$ año : num 2018 2019 2020 2021
$ poblacion_total : num 1.25e+08 1.26e+08 1.26e+08 1.27e+08
$ nacimientos_registrados : num 2162535 2092214 1629211 1912178
$ defunciones_registradas : num 722611 747784 1086743 1122249
$ casos_covid_confirmados : num 0 0 1437185 0
$ defunciones_covid_confirmadas: num 0 0 126507 0
$ tasa_natalidad : num 17.3 16.6 12.9 15.1
$ tasa_mortalidad : num 5.79 5.94 8.62 8.86
$ incremento_natural : num 11.54 10.68 4.3 6.23
$ tasa_letalidad : num NaN NaN 8.8 NaN
'datos': 4 obs. of 9 variables:
Error: unexpected symbol en "'datos': 4 obs."
ggplot(datos, aes(x = anio, y = incremento_natural)) +
geom_line(linewidth = 1) +
geom_point(size = 3) +
geom_text(
aes(label = round(incremento_natural, 2)),
vjust = -1.5,
size = 4
) +
scale_y_continuous(expand = expansion(mult = c(0.05, 0.2))) +
labs(
title = "Dinámica del incremento natural de la población",
x = "Anio",
y = "Incremento natural (por cada 1,000 habitantes)"
) +
theme_minimal()
# Resultado
cat("Letalidad por Covid-19 fue de",
#mean(porc_letalidad, na.rm = TRUE),
"% durante 2020.\n ")
Letalidad por Covid-19 fue de % durante 2020.
datos$letalidad_covid <- (datos$defunciones_covid_confirmadas / datos$casos_covid_confirmados) * 100
datos[, c("anio", "letalidad_covid")]
datos_letalidad <- datos[datos$casos_covid_confirmados > 0, c("anio", "letalidad_covid")]
datos_letalidad
letalidad_valida <- letalidad[!is.na(letalidad) & !is.nan(letalidad)]
Error: objeto 'letalidad' no encontrado
datos <- data.frame(
año = c(2018, 2019, 2020, 2021),
poblacion_total = c(124738000, 125930000, 126014024, 126705138),
nacimientos_registrados = c(2162535, 2092214, 1629211, 1912178),
defunciones_registradas = c(722611, 747784, 1086743, 1122249),
casos_covid_confirmados = c(0, 0, 1437185, 0),
defunciones_covid_confirmadas = c(0, 0, 126507, 0)
)
datos$tasa_natalidad <- (datos$nacimientos_registrados /
datos$poblacion_total) * 1000
datos$tasa_mortalidad <- (datos$defunciones_registradas /
datos$poblacion_total) * 1000
datos$incremento_natural <- datos$tasa_natalidad - datos$tasa_mortalidad
datos$tasa_letalidad <- (datos$defunciones_covid_confirmadas / datos$casos_covid_confirmados) * 100
# Redondear solo columnas númericas
datos_redondeados <- datos %>%
mutate_if(is.numeric, round, 2)
# Crear la tabla con flextable
flextable(datos_redondeados) %>%
autofit()
año | poblacion_total | nacimientos_registrados | defunciones_registradas | casos_covid_confirmados | defunciones_covid_confirmadas | tasa_natalidad | tasa_mortalidad | incremento_natural | tasa_letalidad |
|---|---|---|---|---|---|---|---|---|---|
2,018 | 124,738,000 | 2,162,535 | 722,611 | 0 | 0 | 17.34 | 5.79 | 11.54 | |
2,019 | 125,930,000 | 2,092,214 | 747,784 | 0 | 0 | 16.61 | 5.94 | 10.68 | |
2,020 | 126,014,024 | 1,629,211 | 1,086,743 | 1,437,185 | 126,507 | 12.93 | 8.62 | 4.30 | 8.8 |
2,021 | 126,705,138 | 1,912,178 | 1,122,249 | 0 | 0 | 15.09 | 8.86 | 6.23 |