Bienvenida e introducción

1

Todo lo que aprenderás sobre el lenguaje R

2

Programación y Data Science

3

R y proyecto economía naranja.

4

Instalando nuestras herramientas

Variables, tipos de datos y estructuras

5

Los primeros cálculos con R y variables

6

Tipos de datos

7

Estructura del dataset del proyecto

8

Vectores

9

Matrices

10

Ejercicios con matrices

11

Operadores para comparar y ubicar datos

12

Factores, listas y echar un vistazo al dataset

EDA: Exploratory data analysis

13

Qué es EDA: Exploratory Data Analysis

14

Gráficas de dispersión e histogramas.

15

Box Plot y su interpretación

16

EDA con dataset proyecto - Gráficas de dispersión.

17

EDA con histogramas.

18

EDA con dataset proyecto - histogramas - ggplot2

19

EDA con box plot- ggplot2

20

EDA con dataset proyecto - box plot- ggplot2 - dplyr

21

EDA con gráficas de dispersión con más de dos variables - ggplot2

22

EDA con dataset proyecto usando gráficas de dispersión con más de dos variables - ggplot2 - plotly

La estadística de los datos

23

Buscando correlaciones con pairs

24

Confirmando correlaciones con la función cor

25

Buscando correlaciones con pairs en dataset proyecto

26

Confirmando correlaciones con la función cor en dataset proyecto.

27

Protegiéndonos de los peligros del promedio.

28

Eliminando los NA's para hacer los cálculos.

29

Estadística y visualización aplicada a análisis de datos de mercadeo.

Ajustando los datos

30

Generando tablas, filtrando y seleccionando datos - dplyr-Parte 1

31

Generando tablas, filtrando y seleccionando datos - dplyr-Parte 2

Mejorando la visualización

32

Viendo más información con facet wrap - Parte 1

33

Viendo más información con facet wrap - Parte 2

Organizar visualizaciones y código con R Markdown

34

Conociendo R Markdown y organizando los hallazgos del análisis en un documento PDF.

Conclusiones Finales

35

Invitación a continuar recorriendo el mundo del data science.

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

EDA con dataset proyecto - box plot- ggplot2 - dplyr

20/35
Recursos

Aportes 26

Preguntas 11

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

C L A S E 2 0 🏆
EDA con dataset proyecto - box plot- ggplot2 - dplyr
.
¿Que se ha hecho en el primer ggplot? 👩‍🏫
Se ha graficado un boxplot de aporte a la economia naranja en pib paises latam con alto y bajo pib per capita
.
¿Tengo que instalar algun paquete? 🤔
Si, tienes que tener dplyr y ggplot2. Los haces con install.package(" ")
library()
.
.
Son tres pasos para graficar este boxplot, asi que presta atención 👀
.
PASO 1
DECLARAS LA VARIABLE NÙMERICA

.
La declaracion es para pautar cual es la variable numerica del boxplot
.
En este caso es GDP.PC 💸 que se declara como economy
.

.
El nùmero que resulta se interpreta ($) como el promedio de PIB per capita para cada habitante al año entre los paises del dataset orangeec
.
.
PASO 2
CREAS UNA NUEVA VARIABLE CATEGORICA

.
Esta variable se crea usando la variable numerica declarada en el PASO 1
.
%>%, mutate, ifelse
.
%>% significa “va a pasar a”
.
mutate viene porque ese dataset va a cambiar, se va agrandar, va a mutar 🦋
.
ifelse significa que la nueva variable sera si otra variable del dataset es > menor a la declarada en el PASO 1
.

.
Pasamos ** %>%** el dataset (orangeec) a mutate para que se cree una nueva variable (Strong_economy) en una nueva columna dentro del dataset (orangeec) y la definicion de esa nueva variable (Strong_economy) depende ifelse si es mayor < o menor > que la condicion descrita (“por debajo promedio pib pèrcapita”, “sobre-arriba promedio pib pèrcapita”)
.
.
¿En que punto del proceso estamos? 🔌
Se ha creado una nueva variable con un factor (etiqueta) para cruzar con la variable numerica y hacer boxplot. Porque recuerda que: el boxplot se grafica cruzando una variable numerica con una categorica
.
.
PASO 3
GRAFICAR BOXPLOT
👩‍💻
.
Seran dos boxplot uno sera la caja de los paises que estan "Sobre promedio pib pèrcapita"
y otra sera de los paises “Por debajo promedio pib pèrcapita”
.

.
.
TEN SIEMPRE EN CUENTA 💡
.
El boxplot se grafica con una variable numerica y una categorica

Instalando el paquete Tidyverse, no hay que instalar dplyr y ggplot cada uno por separado. Este tiene estos dos paquetes, además de otros requeridos para hacer Data Science.

Esta clase me cayó del cielo para un proyecto de visualización de covid que estaba haciendo …excelente Profe Sonia!

    #
    economy <- mean(orangeec$GDP.PC)
    economy

    orangec <-orangeec %>%
    mutate(Strong_economy = ifelse(GDP.PC < economy,
                                    "Por debajo promedio pib per capita",
                                    "Sobre-Arriba promedio pib per capita"))
    ggplot(orangec, aes(x=Strong_economy, y=Creat.Ind...GDP,
                        fill=Strong_economy))+
    geom_boxplot(alpha=0.4)+
    labs(c="Tipo de pais", y="Aporte economia naranja al pib",
        title="Aporte economia naranja en pib paises latam con
        alto y bajo pib per capita")+
    theme(legend.position = "none")+
    theme(panel.background = element_blank(),
            panel.grid.major = element_blank(),
            panel.grid.minor = element_blank())


    ggplot(orangec, aes(x=Strong_economy, y=Internet.penetration...population,
                        fill=Strong_economy))+
    geom_boxplot(alpha=0.4)+
    labs(c="Tipo de pais", y="Penetracion de internet (%)",
        title="Penetracion de internet latam con alto y bajo pib per capita")+
    theme(legend.position = "none")+
    theme(panel.background = element_blank(),
            panel.grid.major = element_blank(),
            panel.grid.minor = element_blank()) ```
#######ahora vamos a analizar los datos de orangeec
  
  ###instalamos el programa
  install.packages("dplyr")
  library(dplyr)
  
  ####
  economy<-mean(orangeec$`GDP PC`)
  
  ##
  orangeec<-orangeec%>%
    mutate(Strong_economy=ifelse(`GDP PC`<economy,
                                 "Por debajo de promedio pib per cápica",
                                 "sobre arriva promedio pib per capita"))
  
  ##
  ggplot(orangeec, aes(x=Strong_economy, y=`Creat Ind % GDP`,
                       fill=Strong_economy))+
    geom_boxplot(alpha=0.4)+
    labs(x="Tipo de pais", y="Aporte economia naranjaal pib",
         title = "Aporte economia naranja en pib paises latamcon alto y bajo pib per capita")+
    
    theme(legend.position = "none")+
    theme(panel.background = element_blank(),panel.grid.major=element_blank(),
          panel.grid.minor=element_blank())
  
  ##
  ggplot(orangeec, aes(x=Strong_economy, y=`Internet penetration % population`,
                       fill=Strong_economy))+
    geom_boxplot(alpha=0.4)+
    labs(x="Tipo de pais", y="Penetracion de internet(%)",
         title = "Penetracion de internet en paises Latam con 
         alto y bajo pib per capita")+
    
    theme(legend.position = "none")+
    theme(panel.background = element_blank(),panel.grid.major=element_blank(),
          panel.grid.minor=element_blank())```

Atajo de teclado para el pipe, Ctrl + Shift + M = %>%

Me parece un buen aporte, crear una variable categorica a partir de la diferencia entre media; de manera que se pueden agrupar en dos clases para generar el boxplot!


AvgInflation <- mean(orangeec$Inflation)
AvgInflation

orangeec <- orangeec %>%
  mutate(InflationGroup = ifelse(orangeec$Inflation >= AvgInflation, "Arriba de AVG", "Abajo de AVG"))

ggplot(orangeec, aes(x=as.factor(InflationGroup), y=Education.invest...GDP, fill=InflationGroup)) + 
  geom_boxplot(alpha=0.6) + labs(x="Grupo de inflación", y="Inversión en educación", title="Paises con alta y baja inflacion vs Inversión en educación")

Me sale el siguiente error: Error: mapping must be created by aes()
Cuando ejecuto: ggplot(orangeec, aes(x=Strong_economy, y=Creat.Ind...GDP, fill=Strong_economy))+ geom_boxplot(alpha=0,4)+ labs(x="Tipo de país", y="Aporte economia naranja al PIB", title="Aporte economia naranja en PIB paises latam con alto y bajo PIB per cápita")+ theme(legend.position = "none")+ theme(panel.background = element_blank(), panel.grid.major = element_blank(), panel.grid.minor = element_blank())

Hola, una pregunta, ¿hay alguna forma de hacer que los números de los cuartiles aparezcan junto con el boxplot usando ggplo2?

me esta saliendo el siguiente error cuando ejecuto la sentencia

<Error in orangeec %>% mutate(Strong_economy = ifelse(GDP.PC < economy,  : 
  could not find function "%>%">
Solo llego hasta esta clase, la verdad solo siento que perdi mi tiempo

Para quitar el fondo gris también podemos utilizar simplemente:

  • theme_minimal()
    Así:
    ggplot(orangeec, aes(x=nivel_economico, y=Internet.penetration…population, fill=nivel_economico)) +
    geom_boxplot() +labs(x=“tipo de pais”, y=“penetracion del internet”, title=“Penetracion de internet en paises latam con alto y bajo pib per capita”) + theme_minimal()

Quería acotar lo siguiente:

Sí se puede crear boxplot solo con una variable numérica

8:50 “Sin hacer la creación de la nueva variable no habríamos podidos hacer el boxplot porque teníamos solo variables numéricas”

FALSO, no hace falta hacer boxplots por categorías.

boxplot(orangeec$AporteEcNaranja, ylab="Aporte (%) de la Economía Naranja al PIB", main="Boxplot sencillo con una sola variable")

No me quedó tan claro el operador pipe %>% aquí una explicación más detallada

https://rsanchezs.gitbooks.io/rprogramming/content/chapter9/pipeline.html

Aunque en mi caso no vi la necesidad de usar eso, yo agregué la nueva columna de forma sencilla de esta manera…

# AGREGAR UNA VARIABLE CATEGÓRICA
PIB.PC.mean = mean(orangeec$GDP.PC)
PIB.PC.mean #[1] 14052.94

orangeec$Strong_econmy = ifelse(orangeec$GDP.PC<PIB.PC.mean, 
                                "PIB per cápita menor al promedio",
                                "PIB per cápita mayor al promedio" )

para entender mejor el pipe les recomiendo este video:https://www.youtube.com/watch?v=BqaqPTjxH-c

no se si les funcione pero yo sin instalar dplyr realice este codigo y si me funciono:

economy= mean(orangeec$GDP.PC)
economy
orangeec$strong = ifelse(orangeec$GDP.PC>economy,'Por encima del promedio','por debajo del promedio')


Así como utilizo el mutate para agregar una nueva columna con datos, puedo hacerlo para una fila con mutate (sin usar rbind) ?

Hola, creo que no me funciona la librería dplyr con esta versión de R

library(dplyr)
Error: package or namespace load failed for ‘dplyr’ in library.dynam(lib, package, package.lib):
DLL ‘glue’ not found: maybe not installed for this architecture?
In addition: Warning message:
package ‘dplyr’ was built under R version 3.6.3

Probando configuraciones de boxplot:

ggplot(orangeec,aes(x=Strong_economy,y=Creat.Ind...GDP,
                    fill=Strong_economy))+ geom_boxplot(alpha=0.4)+
  labs(x="Tipo de país",y="Aporte economía naranja al PIB",
       title = "Aporte economía naranja en pib países latam con alto y bajo PIb per cápita")+theme(legend.position="none")+
  theme(panel.background=element_rect(fill="white",colour="brown",size = 2,linetype = "solid"),
        panel.grid.major=element_line(size = 0.25, linetype = 'solid',colour = "red"), 
        panel.grid.minor = element_line(size = 0.25, linetype = 'solid',colour = "red"))```

Una buena explicación y ben forma de ver los datos

mtcars$am <- factor(mtcars$am, levels=c(1,0),
labels=c(“Manual”, “Automatico”))

La versión de R que esta empleando la profesora Sonia esta desactualizada la ultima versión es la 4. 0.3. yo tenia la versión 3.41 la actualice y ahora no me corre el código que ella pone de ejemplo, seria posible actualizar el curso, según veo el curso ya tiene más de 2 años. El paquete ggplot2 no aparece en la nueva versión.

# Boxplot

boxplot(mtcars$hp,
        ylab = 'caballos de fuerza',
        main = 'Caballos de fuerza en carros')

library(ggplot2)

ggplot(mtcars, aes(x=as.factor(cyl), y=hp, fill = cyl))+
  geom_boxplot(alpha = 0.6)+
  labs(x = 'cilindros',
       y = 'caballos de fuerza',
       title = 'Caballos de fuerza segun cilindros')+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

ggplot(mtcars,aes(x=am,y=mpg, fill=am))+
  geom_boxplot()+
  labs(x='Tipo de caja',
       y='millas por galon',
       title = 'Millas por galon segun tipo de caja')+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())


mtcars$am <- factor(mtcars$am, levels = c(TRUE, FALSE),
                    labels = c('Manual', 'Automatico'))


#Orangeec

economy <- mean(orangeec$GDP.PC)
economy
library('dplyr')

orangeec <- orangeec %>%
  mutate(Strong_economy = ifelse(GDP.PC < economy,
                                 "Por debajo promedio PIB per cápita",
                                 "Sobre Arriba promedio PIB per cápita"))


ggplot(orangeec,aes(x=Strong_economy,y=Creat.Ind...GDP, fill=Strong_economy))+
  geom_boxplot(alpha = 0.4)+
  labs(x='Tipo de país',
       y='Aporte economia naranja al PIB',
       title = 'Aporte economia naranja al PIB paises latam con alto y bajo PIB per capita')+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())


ggplot(orangeec,aes(x=Strong_economy,y=Internet.penetration...population, fill=Strong_economy))+
  geom_boxplot(alpha = 0.4)+
  labs(x='Tipo de país',
       y='Penetracio de Internet PIB',
       title = 'Penetración Internet en  paises latam con alto y bajo PIB per capita')+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())