#install.packages("tidyverse")
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ ggplot2   3.5.1     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.1
## ✔ purrr     1.0.2     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
#install.packages("sf")
library(sf)
## Linking to GEOS 3.8.0, GDAL 3.0.4, PROJ 6.3.1; sf_use_s2() is TRUE
#install.packages("tigris")
library(tigris)
## To enable caching of data, set `options(tigris_use_cache = TRUE)`
## in your R script or .Rprofile.
#install.packages("tidycensus")
library(tidycensus)
#install.packages("mapview")
library(mapview)
#install.packages("viridis")
library(viridis)
## Loading required package: viridisLite
#install.packages("knitr")
library(knitr)
#install.packages("leaflet")
library(leaflet)
#install.packages("stringr")
library(stringr)
#install.packages("openintro")
library(openintro)
## Loading required package: airports
## Loading required package: cherryblossom
## Loading required package: usdata
#install.packages("ggplot2")
library(ggplot2)
#install.packages("dplyr")
library(dplyr)
#install.packages("mosaic")
library(mosaic)
## Registered S3 method overwritten by 'mosaic':
##   method                           from   
##   fortify.SpatialPolygonsDataFrame ggplot2
## 
## The 'mosaic' package masks several functions from core packages in order to add 
## additional features.  The original behavior of these functions should not be affected by this.
## 
## Attaching package: 'mosaic'
## The following object is masked from 'package:Matrix':
## 
##     mean
## The following object is masked from 'package:openintro':
## 
##     dotPlot
## The following objects are masked from 'package:dplyr':
## 
##     count, do, tally
## The following object is masked from 'package:purrr':
## 
##     cross
## The following object is masked from 'package:ggplot2':
## 
##     stat
## The following objects are masked from 'package:stats':
## 
##     binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
##     quantile, sd, t.test, var
## The following objects are masked from 'package:base':
## 
##     max, mean, min, prod, range, sample, sum
census_api_key("f701cd09a531733fd9d716017d6f4f5964afe2a9")
## To install your API key for use in future sessions, run this function with `install = TRUE`.
census_us_county_income <- get_acs(geography = "county", variables = "B19013_001", 
                            shift_geo = TRUE, geometry = TRUE)
## Getting data from the 2018-2022 5-year ACS
## Warning: The `shift_geo` argument is deprecated and will be removed in a future
## release. We recommend using `tigris::shift_geometry()` instead.
## Using feature geometry obtained from the albersusa package
## Please note: Alaska and Hawaii are being shifted and are not to scale.
## old-style crs object detected; please recreate object with a recent sf::st_crs()

Distribución poblacional del ingreso

ggplot(data = census_us_county_income) + 
  geom_sf(aes(fill = estimate), color = NA) + 
  coord_sf(datum = NA) + 
  theme_minimal() + 
  scale_fill_viridis_c()

Muestra aleatoria

Tome una muestra aleatoria del 20% de la población para generar un interválo de confianza a los niveles de confiabilidad \(\ 1-alpha\) y significancia \(\alpha\) solicitados.

sample_us_county_income <- sample_frac(tbl = census_us_county_income, size = 0.2)

Intervalos de confianza

#Para la media \(\mu\) con varianza conocida (\(\sigma^2=281.357.623 {dolares}^2\))

\[\left(\bar{x}_{n}-z_{\frac{\alpha}{2}}\sqrt{\frac{{\sigma^2}}{n}};\bar{x}_{n}+z_{\frac{\alpha}{2}}\sqrt{\frac{{\sigma^2}}{n}}\right)\]

  1. Con base en la muestra aleatoria generada calcule un intervalo de confianza para la media poblacional de la variable ingreso, basándose en la muestra aleatoria generada (sample_us_county_income) del 90%
Media <- (mean(sample_us_county_income$estimate))
Media
## [1] 62578.09

#Desviación

Desviacion <- round(281357623)
Desviacion
## [1] 281357623

#Calculo de Tamaño

size <- length(sample_us_county_income$estimate)
size
## [1] 627

#Calculo del error estandar

Errorestandar <- round(Desviacion/sqrt(size))
Errorestandar
## [1] 11236341

#Calculo del cuantil de la distribucción estandar

nivel.conf <- 0.9; z_alfa_0_5 <-  qnorm((1+nivel.conf)/2);z_alfa_0_5
## [1] 1.644854
nivel.conf
## [1] 0.9

#Calculo del error de estimación

Error_estimación <- round(z_alfa_0_5*Errorestandar)
Error_estimación
## [1] 18482136

#Calculo del error estimación

Int.inf <- Media-Error_estimación
Int.inf
## [1] -18419558

#Calculo inferior del intervalo de confianza del limite

Int.sup <- Media+Error_estimación
Int.sup
## [1] 18544714

#Calculo del intervalo de confianza

IC <- Media + c(-Error_estimación,+Error_estimación)
IC
## [1] -18419558  18544714

#Grafiga del intervalo de confianza

mean(sample_us_county_income$estimate)+
  cdist("norm", .90)*0.5/sqrt(size)

## [1] 62578.06 62578.12

Conclusión

El análisis realizado sobre la distribución poblacional y el cálculo del intervalo de confianza proporciona una visión clara y cuantitativa en las áreas analizadas. Al tomar una muestra aleatoria del 20% de la población, se logra estimar la media 63815.32 del ingreso con un intervalo de confianza del -18418321 18545951.

2.Con base en la muestra aleatoria generada calcule un intervalo de confianza para la media poblacional de la variable ingreso, basándose en la muestra aleatoria generada (sample_us_county_income) del 95%

Media_2 <- (mean(sample_us_county_income$estimate))
Media_2
## [1] 62578.09

Desviación

Desviación_2 <- round(281357623)
Desviación_2
## [1] 281357623

#Calculo de Tamaño

size_2 <- length(sample_us_county_income$estimate)
size_2
## [1] 627

#Calculo del error estandar

Errorestandar_2 <- round(Desviacion/sqrt(size))
Errorestandar_2
## [1] 11236341

#Calculo del cuantil de la distribución estandar

nivel.conf_2 <- 0.95; z_alfa_0_25 <-  qnorm((1+nivel.conf_2)/2);z_alfa_0_25
## [1] 1.959964
nivel.conf_2
## [1] 0.95

#Calculo del error de estimación

Error_estimación_2 <- round(z_alfa_0_25*Errorestandar)
Error_estimación_2
## [1] 22022824

#Calculo inferior del intervalo de confianza del limite

Int.inf_2 <- Media-Error_estimación
Int.inf_2
## [1] -18419558

#Calculo del intervalo de confianza

IC_2 <- Media_2 + c(-Error_estimación_2,+Error_estimación_2)
IC_2
## [1] -21960246  22085402

#Grafica del intervalo de confianza

mean(sample_us_county_income$estimate)+
  cdist("norm", .95)*0.25/sqrt(size)

## [1] 62578.07 62578.11

Conclusión

El análisis realizado proporciona una estimación razonablemente precisa de la media de la población. El tamaño de muestra del 20% es un factor crucial que contribuye a mejorar la precisión de nuestras estimaciones, ya que permite capturar una diversidad de datos representativa de la población total.

Sin embargo, como lo demuestra la gráfica, el intervalo de confianza presenta un nivel elevado de incertidumbre. Esto indica que, aunque tenemos un rango en el cual es probable que se encuentre la verdadera media poblacional, la amplitud del intervalo sugiere que aún existe una variabilidad considerable en los ingresos dentro de la población.

3.Con base en la muestra aleatoria generada calcule un intervalo de confianza para la media poblacional de la variable ingreso, basándose en la muestra aleatoria generada (sample_us_county_income) del 99%

Media_3 <- (mean(sample_us_county_income$estimate))
Media_3
## [1] 62578.09

Desviación

Desviación_3 <- round(281357623)
Desviación_3
## [1] 281357623

#Calculo de Tamaño

size_3 <- length(sample_us_county_income$estimate)
size_3
## [1] 627

#Calculo del error estandar

Errorestandar_3 <- round(Desviacion/sqrt(size))
Errorestandar_3
## [1] 11236341

#Calculo del cuantil de la distribución estandar

nivel.conf_3 <- 0.99; z_alfa_0_01 <-  qnorm((1+nivel.conf_3)/2);z_alfa_0_01
## [1] 2.575829
nivel.conf_3
## [1] 0.99

#Calculo del error de estimación

Error_estimación_3 <- round(z_alfa_0_01*Errorestandar_3)
Error_estimación_3
## [1] 28942896

#Calculo inferior del intervalo de confianza del limite

Int.inf_3 <- Media_3-Error_estimación_3
Int.inf_3
## [1] -28880318

#Calculo del intervalo de confianza

IC_3 <- Media_3 + c(-Error_estimación_3,+Error_estimación_3)
IC_3
## [1] -28880318  29005474

#Grafica del intervalo de confianza

mean(sample_us_county_income$estimate)+
  cdist("norm", .99)*0.01/sqrt(size)

## [1] 62578.09 62578.09

Conclusión

El intervalo de confianza al 99% calculado para la media de los ingresos de los condados proporciona un rango más amplio, ofreciendo un nivel de certeza muy alto sobre la ubicación de la verdadera media. Aunque esto aumenta la confianza en la estimación, también incrementa el margen de error, lo que significa que la estimación va a ser menos precisa que los intervalos con un nivel de confianza más bajo.

Para la media \(\mu\) con varianza desconocida

\[ \left(\bar{x}_{n}-z_{\frac{\alpha}{2}}\sqrt{\frac{{s^2}}{n}};\bar{x}_{n}+z_{\frac{\alpha}{2}}\sqrt{\frac{{s^2}}{n}}\right) \] 4.Con base en la muestra aleatoria generada calcule un intervalo de confianza para la media poblacional de la variable ingreso, basándose en la muestra aleatoria generada (sample_us_county_income) del 90%

Media_4 <- round(mean(sample_us_county_income))
## Warning in mean.default(x, ..., na.rm = na.rm): argument is not numeric or
## logical: returning NA
Media_4
## [1] NA

#Desviación

Desviación_4 <- round(281357623)
Desviación_4
## [1] 281357623

Calculo del tamaño muestra

size_4 <- length(sample_us_county_income)
size_4
## [1] 6

#Calculo del error estandar

Errorestandar_4 <- round(Desviación_4/sqrt(size_4),2)
Errorestandar_4
## [1] 114863769

Calculo del cuantil de la distribución normal estanadar

nivel.conf_4 <- 0.9;z_alfa_0_5 <- qnorm((1+nivel.conf_4)/2);z_alfa_0_5
## [1] 1.644854

#Calculo del error de estimación

Error_estimación_4 <- round(z_alfa_0_5*Errorestandar_4,2)
Error_estimación_4
## [1] 188934086

#Calculo del limite inferior

Int.inf_4 <- Media_4 - Error_estimación_4
Int.inf_4
## [1] NA

#Calculo del intervalo de confianza

  IC_4 <- Media_4+ c(-Error_estimación_4, +Error_estimación_4)
IC_4
## [1] NA NA

#Grafico del intervalo de confianza

mean(Media_4)+ cdist("norm", .90)*0.5/sqrt(size_4)

## [1] NA NA

5.Con base en la muestra aleatoria generada calcule un intervalo de confianza para la media poblacional de la variable ingreso, basándose en la muestra aleatoria generada (sample_us_county_income) del 95%

Media_5 <- round(mean(sample_us_county_income))
## Warning in mean.default(x, ..., na.rm = na.rm): argument is not numeric or
## logical: returning NA
Media_5
## [1] NA

#Desviación

Desviación_5 <- round(281357623)
Desviación_5
## [1] 281357623

Calculo del tamaño muestra

size_5 <- length(sample_us_county_income)

#Calculo del error estandar

Errorestandar_5 <- round(Desviación_5/sqrt(size_5),2)
Errorestandar_5
## [1] 114863769

Calculo del cuantil de la distribución normal estanadar

nivel.conf_5 <- 0.95;z_alfa_0_25 <- qnorm((1+nivel.conf_5)/2);z_alfa_0_25
## [1] 1.959964

#Calculo del error de estimación

Error_estimación_5 <- round(z_alfa_0_25*Errorestandar_5,2)
Error_estimación_5
## [1] 225128850

#Calculo del limite inferior

Int.inf_5 <- Media_5 - Error_estimación_5
Int.inf_5
## [1] NA

#Calculo del intervalo de confianza

  IC_5 <- Media_5+ c(-Error_estimación_5, +Error_estimación_5)
IC_5
## [1] NA NA

#Grafico del intervalo de confianza

mean(Media_5)+ cdist("norm", .95)*0.25/sqrt(size_5)

## [1] NA NA

6.Con base en la muestra aleatoria generada calcule un intervalo de confianza para la media poblacional de la variable ingreso, basándose en la muestra aleatoria generada (sample_us_county_income) del 99%

Media_6 <- round(mean(sample_us_county_income))
## Warning in mean.default(x, ..., na.rm = na.rm): argument is not numeric or
## logical: returning NA
Media_6
## [1] NA

#Desviación

Desviación_6 <- round(281357623)
Desviación_6
## [1] 281357623

Calculo del tamaño muestra

size_6 <- length(sample_us_county_income)

#Calculo del error estandar

Errorestandar_6 <- round(Desviación_6/sqrt(size_6),2)
Errorestandar_6
## [1] 114863769

Calculo del cuantil de la distribución normal estanadar

nivel.conf_6 <- 0.99;z_alfa_0_01 <- qnorm((1+nivel.conf_6)/2);z_alfa_0_01
## [1] 2.575829

#Calculo del error de estimación

Error_estimación_6 <- round(z_alfa_0_01*Errorestandar_6,2)
Error_estimación_6
## [1] 295869461

#Calculo del limite inferior

Int.inf_6 <- Media_6 - Error_estimación_6
Int.inf_6
## [1] NA

#Calculo del intervalo de confianza

  IC_6 <- Media_6+ c(-Error_estimación_6, +Error_estimación_6)
IC_6
## [1] NA NA

#Grafico del intervalo de confianza

mean(Media_6)+ cdist("norm", .99)*0.01/sqrt(size_6)

## [1] NA NA