Carga en R el CSV de la web /CURSOS1/R STUDIO/r-basic-master/data/medals.csv y responde a las siguientes preguntas.

# Cargar el paquete readr
install.packages("readr")
## package 'readr' successfully unpacked and MD5 sums checked
## 
## The downloaded binary packages are in
##  C:\Users\Belisario\AppData\Local\Temp\Rtmp2LDyga\downloaded_packages
library(readr)

# Especificar la ruta local del archivo CSV
file_path <- ("~/CURSOS1/R STUDIO/r-basic-master/data/medals.csv")
# Cargar el archivo CSV desde la ruta local
medals_data <- read_csv("~/CURSOS1/R STUDIO/r-basic-master/data/medals.csv")
# Ver las primeras 10 filas del dataframe
head(medals_data, 10)
## # A tibble: 10 × 9
##     ...1  Year City     Sport      Discipline     NOC   Event Event.gender Medal
##    <dbl> <dbl> <chr>    <chr>      <chr>          <chr> <chr> <chr>        <chr>
##  1     1  1924 Chamonix Skating    Figure skating AUT   indi… M            Silv…
##  2     2  1924 Chamonix Skating    Figure skating AUT   indi… W            Gold 
##  3     3  1924 Chamonix Skating    Figure skating AUT   pairs X            Gold 
##  4     4  1924 Chamonix Bobsleigh  Bobsleigh      BEL   four… M            Bron…
##  5     5  1924 Chamonix Ice Hockey Ice Hockey     CAN   ice … M            Gold 
##  6     6  1924 Chamonix Biathlon   Biathlon       FIN   mili… M            Silv…
##  7     7  1924 Chamonix Skating    Figure skating FIN   pairs X            Silv…
##  8     8  1924 Chamonix Skating    Speed skating  FIN   1000… M            Gold 
##  9     9  1924 Chamonix Skating    Speed skating  FIN   1000… M            Silv…
## 10    10  1924 Chamonix Skating    Speed skating  FIN   1500m M            Gold
#Para realizar un resumen estadistico del DATAFRAME en GENERAL
head(medals_data)
## # A tibble: 6 × 9
##    ...1  Year City     Sport      Discipline     NOC   Event  Event.gender Medal
##   <dbl> <dbl> <chr>    <chr>      <chr>          <chr> <chr>  <chr>        <chr>
## 1     1  1924 Chamonix Skating    Figure skating AUT   indiv… M            Silv…
## 2     2  1924 Chamonix Skating    Figure skating AUT   indiv… W            Gold 
## 3     3  1924 Chamonix Skating    Figure skating AUT   pairs  X            Gold 
## 4     4  1924 Chamonix Bobsleigh  Bobsleigh      BEL   four-… M            Bron…
## 5     5  1924 Chamonix Ice Hockey Ice Hockey     CAN   ice h… M            Gold 
## 6     6  1924 Chamonix Biathlon   Biathlon       FIN   milit… M            Silv…
summary(medals_data)
##       ...1             Year          City              Sport          
##  Min.   :   1.0   Min.   :1924   Length:2311        Length:2311       
##  1st Qu.: 578.5   1st Qu.:1968   Class :character   Class :character  
##  Median :1156.0   Median :1988   Mode  :character   Mode  :character  
##  Mean   :1156.0   Mean   :1980                                        
##  3rd Qu.:1733.5   3rd Qu.:1998                                        
##  Max.   :2311.0   Max.   :2006                                        
##   Discipline            NOC               Event           Event.gender      
##  Length:2311        Length:2311        Length:2311        Length:2311       
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##                                                                             
##                                                                             
##                                                                             
##     Medal          
##  Length:2311       
##  Class :character  
##  Mode  :character  
##                    
##                    
## 
# Verifica si hay valores faltantes en el dataframe:
colSums(is.na(medals_data))
##         ...1         Year         City        Sport   Discipline          NOC 
##            0            0            0            0            0            0 
##        Event Event.gender        Medal 
##            0            0            0
# Ver las últimas 10 filas del dataframe
tail(medals_data, 10)
## # A tibble: 10 × 9
##     ...1  Year City  Sport  Discipline     NOC   Event        Event.gender Medal
##    <dbl> <dbl> <chr> <chr>  <chr>          <chr> <chr>        <chr>        <chr>
##  1  2302  2006 Turin Skiing Alpine Skiing  USA   Alpine comb… M            Gold 
##  2  2303  2006 Turin Skiing Alpine Skiing  USA   giant slalom W            Gold 
##  3  2304  2006 Turin Skiing Freestyle Ski. USA   moguls       M            Bron…
##  4  2305  2006 Turin Skiing Snowboard      USA   Giant paral… W            Bron…
##  5  2306  2006 Turin Skiing Snowboard      USA   Half-pipe    M            Gold 
##  6  2307  2006 Turin Skiing Snowboard      USA   Half-pipe    M            Silv…
##  7  2308  2006 Turin Skiing Snowboard      USA   Half-pipe    W            Gold 
##  8  2309  2006 Turin Skiing Snowboard      USA   Half-pipe    W            Silv…
##  9  2310  2006 Turin Skiing Snowboard      USA   Snowboard C… M            Gold 
## 10  2311  2006 Turin Skiing Snowboard      USA   Snowboard C… W            Silv…
# Ver la estructura del dataframe
str(medals_data)
## spc_tbl_ [2,311 × 9] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
##  $ ...1        : num [1:2311] 1 2 3 4 5 6 7 8 9 10 ...
##  $ Year        : num [1:2311] 1924 1924 1924 1924 1924 ...
##  $ City        : chr [1:2311] "Chamonix" "Chamonix" "Chamonix" "Chamonix" ...
##  $ Sport       : chr [1:2311] "Skating" "Skating" "Skating" "Bobsleigh" ...
##  $ Discipline  : chr [1:2311] "Figure skating" "Figure skating" "Figure skating" "Bobsleigh" ...
##  $ NOC         : chr [1:2311] "AUT" "AUT" "AUT" "BEL" ...
##  $ Event       : chr [1:2311] "individual" "individual" "pairs" "four-man" ...
##  $ Event.gender: chr [1:2311] "M" "W" "X" "M" ...
##  $ Medal       : chr [1:2311] "Silver" "Gold" "Gold" "Bronze" ...
##  - attr(*, "spec")=
##   .. cols(
##   ..   ...1 = col_double(),
##   ..   Year = col_double(),
##   ..   City = col_character(),
##   ..   Sport = col_character(),
##   ..   Discipline = col_character(),
##   ..   NOC = col_character(),
##   ..   Event = col_character(),
##   ..   Event.gender = col_character(),
##   ..   Medal = col_character()
##   .. )
##  - attr(*, "problems")=<externalptr>
# La columna ...1 parece ser un índice. Si no es necesaria, puedes eliminarla:
medals_data <- medals_data[, -1]
# Ver las Columnas de DataFrame
colnames(medals_data)
## [1] "Year"         "City"         "Sport"        "Discipline"   "NOC"         
## [6] "Event"        "Event.gender" "Medal"
# Para especificar las Columnas

# Cargar el paquete readr
library(readr)

# Especificar la ruta local del archivo CSV
file_path <- "~/CURSOS1/R STUDIO/r-basic-master/data/medals.csv"

# Cargar el archivo CSV desde la ruta local usando read_csv
medals_data <- read_csv(file_path)

# Ver la especificación de las columnas
spec(medals_data)
## cols(
##   ...1 = col_double(),
##   Year = col_double(),
##   City = col_character(),
##   Sport = col_character(),
##   Discipline = col_character(),
##   NOC = col_character(),
##   Event = col_character(),
##   Event.gender = col_character(),
##   Medal = col_character()
## )

ANALISIS DESCRIPTIVO

Pregunta 1

¿Cuántos deportistas aparecen en el data frame?

# Cargar el paque dplyr
library(dplyr)

# Contar el número de deportistas únicos (asumiendo que cada fila es un deportista único)
num_deportistas <- medals_data %>% 
  summarise(num_deportistas = n())

# Mostrar el resultado
print(num_deportistas)
## # A tibble: 1 × 1
##   num_deportistas
##             <int>
## 1            2311

Pregunta 2

¿Cuántos deportistas han ganado medallas de oro? ¿Cuántos han ganado medallas de plata? ¿Y cuántos de bronce?

# Cargar el paque dplyr
library(dplyr)

# Contar el número de medallas de cada tipo
medallas_por_tipo <- medals_data %>% 
  group_by(Medal) %>% 
  summarise(count = n())

# Mostrar el resultado
print(medallas_por_tipo)
## # A tibble: 3 × 2
##   Medal  count
##   <chr>  <int>
## 1 Bronze   764
## 2 Gold     774
## 3 Silver   773
# Cargar el paquete ggplot2
library(ggplot2)

# Crear el gráfico de barras
ggplot(medallas_por_tipo, aes(x = Medal, y = count, fill = Medal)) +
  geom_bar(stat = "identity") +
  labs(title = "Número de Medallas por Tipo",
       x = "Tipo de Medalla",
       y = "Número de Medallas") +
  theme_minimal()

Pregunta 3

¿En cuántos lugares se han hecho olimpiadas de invierno?

# Cargar el paque dplyr
library(dplyr)

# Contar el número de ciudades únicas que han albergado los Juegos Olímpicos de Invierno
num_ciudades <- medals_data %>% 
  summarise(num_ciudades = n_distinct(City))

# Mostrar el resultado
print(num_ciudades)
## # A tibble: 1 × 1
##   num_ciudades
##          <int>
## 1           17
# Cargar el paquete ggplot2
library(ggplot2)

# Contar el número de veces que cada ciudad ha albergado los Juegos Olímpicos de Invierno
ciudades_olimpiadas <- medals_data %>%
  group_by(City) %>%
  summarise(count = n()) %>%
  arrange(desc(count))

# Crear el gráfico de barras
ggplot(ciudades_olimpiadas, aes(x = reorder(City, -count), y = count, fill = City)) +
  geom_bar(stat = "identity") +
  labs(title = "Número de Juegos Olímpicos de Invierno por Ciudad",
       x = "Ciudad",
       y = "Número de Juegos Olímpicos") +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 90, hjust = 1))

Pregunta 4

¿Cuántos hombres y cuántas mujeres hay?

# Cargar el paque dplyr
library(dplyr)

# Contar el número de hombres y mujeres
genero_medallas <- medals_data %>% 
  group_by(Event.gender) %>% 
  summarise(count = n())

# Mostrar el resultado
print(genero_medallas)
## # A tibble: 3 × 2
##   Event.gender count
##   <chr>        <int>
## 1 M             1386
## 2 W              802
## 3 X              123
# Cargar el paquete ggplot2
library(ggplot2)

# Crear el gráfico de barras
ggplot(genero_medallas, aes(x = Event.gender, y = count, fill = Event.gender)) +
  geom_bar(stat = "identity") +
  labs(title = "Número de Medallas por Género",
       x = "Género del Evento",
       y = "Número de Medallas") +
  theme_minimal()

Pregunta 5

¿En qué año participaron más deportistas?

# Cargar el paque dplyr
library(dplyr)

# Contar el número de deportistas por año
deportistas_por_ano <- medals_data %>% 
  group_by(Year) %>% 
  summarise(count = n()) %>% 
  arrange(desc(count))

# Mostrar el año con más deportistas
ano_con_mas_deportistas <- deportistas_por_ano %>% 
  slice(1)

# Mostrar el resultado
print(ano_con_mas_deportistas)
## # A tibble: 1 × 2
##    Year count
##   <dbl> <int>
## 1  2006   252
# Cargar el paquete ggplot2
library(ggplot2)

# Crear el gráfico de barras
ggplot(deportistas_por_ano, aes(x = Year, y = count)) +
  geom_bar(stat = "identity", fill = "steelblue") +
  labs(title = "Número de Deportistas por Año",
       x = "Año",
       y = "Número de Deportistas") +
  theme_minimal()

Pregunta 6

El campo NOC indica el país del ganador de la medalla. ¿Qué país puede presumir de haber ganado más medallas de oro en los juegos de invierno entre 1960 y 1996?

# Cargar el paque dplyr
library(dplyr)

# Filtrar los datos para el rango de años 1960-1996 y medallas de oro
medallas_oro_1960_1996 <- medals_data %>% 
  filter(Year >= 1960 & Year <= 1996 & Medal == "Gold")

# Contar el número de medallas de oro por país
medallas_oro_por_pais <- medallas_oro_1960_1996 %>% 
  group_by(NOC) %>% 
  summarise(count = n()) %>% 
  arrange(desc(count))

# Mostrar el país con más medallas de oro
pais_con_mas_medallas_oro <- medallas_oro_por_pais %>% 
  slice(1)

# Mostrar el resultado
print(pais_con_mas_medallas_oro)
## # A tibble: 1 × 2
##   NOC   count
##   <chr> <int>
## 1 URS      71
# Cargar el paquete ggplot2
library(ggplot2)

# Crear el gráfico de barras
ggplot(medallas_oro_por_pais, aes(x = reorder(NOC, -count), y = count, fill = NOC)) +
  geom_bar(stat = "identity") +
  labs(title = "Número de Medallas de Oro por País (1960-1996)",
       x = "País",
       y = "Número de Medallas de Oro") +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 90, hjust = 1))