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.

Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

EDA con dataset proyecto - histogramas - ggplot2

18/35
Recursos

Aportes 38

Preguntas 4

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

para que poder realizar el reto se debe utlizar la siguiente función
"scale_x_continuous(breaks = seq(40, max(100), 5))"

ggplot()+geom_histogram(data=orangeec, 
                        aes (x=Internet.penetration...population), fill="purple", color="orange", 
                        binwidth= 5 )+
  scale_x_continuous(breaks = seq(40, max(100), 5))+
  labs(x="Penetración internet (%) de la población", y="Cantidad de paises",
       tittle="Penetración de internet en paises LATAM")+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

CLASE 18 🤓
EDA CON DATASET PROYECTO - HISTOGRAMAS - GGPLOT2

.
En esta clase vimos tres representaciones con variables de dataset orangeec. Se copio
el codigo de ggplot usado en la clase anterior
.
LA 1ERA
"PIB per càpita en paises latam"

Hay dos paises con 20.000$ de PIB per capita 🤑
La mayor cantidad de paises estan en los 10.000$ de PIB per capita 😑
.
LA 2DA
"Contribuciòn de la economa naranja al PIB en latam"

Hay tres paises con un 2% de aporte desde la economia naranja al PIB 💩
Hay un pais que aporta al 6% desde la economia naranja al PIB y otro que aporta el 7% desde su economia naranja al PIB 😀
.
LA 3ERA
"Penetraciòn internet en paises latam"

👆👆👆
SOLUCIÒN AL RETO
scale_x_continuous(breaks = seq(40,100,5))
.
Hay un pais con 60% de acceso a internet 💻
Hay dos paises con 80% de acceso a internet 🙂
No hay pais que tenga un 55% de penetracion a internet 🌐
Hay cuatro paises por debajo del 50% de penetracion a internet en su poblacion 🤦‍♀️
El pais que mas tiene acceso a internet cuenta con 95% de penetracion a internet en su poblacion 🤩
.
.
RECORDAD QUE… 💃
.
En estos graficos de histograma vemos 👁 la frecuencia con la que la variable solicitada
esta distribuida 📊
.
Para definir el binwidth() hay saber como esta expresada la variable: porcentaje %, dolares $, euros € etc; y saber sus limites para marcar un intervalo acorde a la secuencia💁‍♀️
.
Comprueba siempre en ggplot que el simbolo + este siempre al cerrar un parentesis () 💡

Así queda el reto resuelto y documentado:

ggplot() +
  geom_histogram(data=orangeec,
                 aes(x=Internet.penetration...population), # queremos ver la variable PIB PER CAPITA
                 fill="red", # barritas de color azul
                 color="yellow", # y un contorno rojo
                 binwidth = 5)  + # valor en porcentaje (vamos de a 5% por barra)
  labs(x="penetración de internet como (%) de la población", 
       y="cantidad de paises",
       title="penetración de internet en paises de latam") +
  xlim(30,100) + # numeramos del 30% al 100% 
  ylim(0,4) + # ponemos en el eje Y valores del 0 al 4
  scale_x_continuous(breaks = seq(30,100,by=5)) + # le colocamos valores a cada barras (que van del 30% al 100%) cada 5%
  theme(legend.position = "none") +
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

Colores en R para darle un mejor diseño a los gráficos
http://www.stat.columbia.edu/~tzheng/files/Rcolor.pdf

#Distribucion de frecuencias en cuanto a penetracion de internet

ggplot() + geom_histogram(data=orangeec,
aes(x=Internet.penetration…population), fill=“red”, color=“black”,
binwidth = 5)+
labs(x=“Penetracion Internet como % poblacion”, y=“Cantidad de paises”,
title=“Penetracion de internet en paises latam”) +
scale_x_continuous(breaks = seq(40,100,5))+
theme(legend.position = “none”)+
theme(panel.background = element_blank(), panel.grid.major = element_blank(),
panel.grid.minor = element_blank())

Utilicé el siguiente código para poner todos los saltos en el eje x scale_x_continuous(breaks = seq(40,100,5))

Para dar formato a la escala del eje x en el histograma de frecuencias.
Agregar:
...+ scale_x_continuous(name="Nombre_Eje_x", breaks=seq(from = Li, to = Ls, by = St))

donde:
Li: (número entero) limite inferior del eje x
Ls: (número entero) limite superior del eje x
by: (número entero) tamaño del incremento.

Les comparto el codigo implementado para python

def histograma_config(ax_plot, x, title='', x_label='', y_label=''):
    frec, x_bins, patches = ax_plot.hist(x, edgecolor='k', linewidth=1)
    ax_plot.set_xlabel(x_label)
    ax_plot.set_ylabel(y_label)
    ax_plot.set_title(title)

    color_fracs = frec / frec.max()

    color_norm = colors.Normalize(color_fracs.min(), color_fracs.max())
    color_norm

    for frac, patch in zip(color_fracs, patches):
        color = plt.cm.Blues(color_norm(frac))
        patch.set_facecolor(color)
fig, (pib_plot, aporte_plot, internet_plot)= plt.subplots(nrows = 1, ncols = 3, figsize = (15,3), sharey = True)

histograma_config(ax_plot = pib_plot, 
                  x = orangeec['GDP PC'], 
                  title='PIB per Capita en paises latam', 
                  x_label='PIB per Capita', 
                  y_label='Cantidad de Paises')

histograma_config(aporte_plot, orangeec['Creat Ind % GDP'], 
                  'Contribucion Economia naranja al pib en paises latam', 
                  'Aporte a la Economia Naranja (%)')

histograma_config(internet_plot, orangeec['Internet penetration % population'], 
                  'Penetracion internet en paises latam', 
                  'Penetracion de internet (%)')

fig.savefig('orangeec_hist.png')

Reto cumplido, hay varias formas de escribir la función scale, aquí 3 ejemplos:

Para poner etiquetas sobre el eje de las x
scale_x_continuous(breaks = seq(40, max(100), 5))

hola para todos aquellos que utilicen ubuntu y no puedan correr los conamdos de instalacion desde la consola de R, solo agreguen este coamndo :

sudo apt-get install r-cran-ggplot2

Hola, como puedo saber que tipo de dato son cada numero que me aparece? ejemplo si es un porcentaje o si es una unidad de medida o kilo o libra…etc

Para poner todos los labels en x de a 5:

+  scale_x_continuous(breaks = seq(30, 100, by=5))

quedando por ejemplo así:

ggplot(orangeec, aes(x=Internet.penetration...population))+geom_histogram(
        fill="red", color="yellow", binwidth = 5)+
        labs(x="Penetracion de internet en % poblacion", y="Cantidad de paises",
             title = "Penetracion de internet en paises latam")+
        theme(legend.position = "none")+
        theme(panel.background = element_blank(), panel.grid.major = element_blank(),
              panel.grid.minor = element_blank())+
        xlim(30, 100)+ ylim(0, 4)+
        scale_x_continuous(breaks = seq(30, 100, by=5))

Adjunto mi reto. Gracias compañeros pude aclarar mis dudas

ggplot()+geom_histogram(data = orangeec,
                        aes(x=orangeec$Internet.penetration...population),
                        fill = "red", 
                        color = "yellow",
                        binwidth = 5)+
  labs(x = "Penetracion internet (%) poblacion", y = "Cantidad de Paises",
       title = "Penetracion de Internet en LATAM")+
  scale_x_continuous(breaks = seq(10,max(100),5))
  theme(legend.position = "none")+
  theme(panel.background = element_blank(), panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

esta es otra forma de colocar las etiquetes en el eje x:

ggplot(orangeec, aes(x = orangeec$Internet.penetration...population))+
  geom_histogram(bins = 5, binwidth = 5, fill = "lightgreen", color = "green")+
  labs(x = "Penetración de internet (%)",
       title = "histograma de penetracion de internet") +
  scale_x_continuous(breaks = c(40,45,50,55,60,65,70,75,80,85,90,95,100),
                    		 label = c("40","45","50","55","60","65","70","75","80","85","90","95","100"))```


gracias a todos por sus aportes, son geniales.

# histograsma mtcars qplot
library(ggplot2)

qplot(mtcars$hp,
      geom = "histogram",
      xlab = "caballos de fuerza",
      main = "carros según caballos de fuerza")

ggplot(mtcars, aes(x=hp))+
         geom_histogram()+
         labs(x='Caballos de fuerza',
              y='Cantidad de carros',
              title= 'Cabballos de fuerza en carro seleccionados')+
        theme(legend.position = "none")+
        theme(panel.background = element_blank(),
              panel.grid.major = element_blank(),
              panel.grid.minor = element_blank())

ggplot(mtcars, aes(x=hp))+
  geom_histogram(binwidth = 30)+
  labs(x='Caballos de fuerza',
       y='Cantidad de carros',
       title= 'Cabballos de fuerza en carro seleccionados')+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

ggplot() + geom_histogram(data=mtcars,
                          aes(x=hp), fill = 'blue', color = 'red',
                          binwidth = 20)+
  labs(x='Caballos de fuerza',
       y='Cantidad de carros',
       title= 'Caballos de fuerza en carro seleccionados')+
  xlim(c(80,288))+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

# hist orangeec
ggplot() + geom_histogram(data=orangeec,
                          aes(x=GDP.PC), fill = 'blue', color = 'red',
                          binwidth = 2000)+
  labs(x='PIB per cápita',
       y='Cantidad de paises',
       title= 'PIB per cápita en paises latam')+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())


ggplot() + geom_histogram(data=orangeec,
                          aes(x=Creat.Ind...GDP), fill = 'blue', color = 'red',
                          binwidth = 1)+
  labs(x='Aporte Economia naranja al PIB(%)',
       y='Contribucion de energia naranja al PIB en LATAM',
       title= 'PIB per cápita en paises latam')+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

ggplot() + geom_histogram(data=orangeec,
                          aes(x=Internet.penetration...population), fill = 'red', color = 'yellow',
                          binwidth = 5)+
  labs(x='Penetración Internet (%) Población',
       y='Cantidad de paises',
       title= 'Penetracion de Internet en paises latam')+
  scale_x_continuous(breaks = seq(40,max(100),5))+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

documentacion

Como saber cual es la unidad de medida de cada valor segun las variables?? intente saber el de orangeec con summary(orangeec) o con ?orangeec y no puedo ver esa info.

Muy buena clase.

Que diferencias existen en :

geom_line(aes(color="green")) 

con

geom_line(colour= "green")+```

y como puedo colorcar valores hsl  o rgb ? 
<dev.new()
ggplot()+geom_histogram(data=OrE,
                        aes(x=Internet.penetration...population),
                        fill="forestgreen", color="green",
                        binwidth=5)+
  scale_x_continuous(breaks=seq(40,100,5))+
  labs(x="Internet permeating in population (%)", y="Countries",
       title="Internet permeating (%) in Latam countries")+
  theme(legend.position="none")+
  theme(panel.background = element_blank(),panel.grid.major=element_blank(),
        panel.grid.minor = element_blank())>
  
ggplot()+geom_histogram(data=orangeec,
                        aes(x=GDP.PC),fill='blue',color='red',
                        binwidth=2000)+
  labs(x="pib per capital", y="paises",
       title="PIB per capital en paises latam")+
  theme(legend.position = 'none')+
  theme(panel.background = element_blank(),panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())


ggplot()+geom_histogram(data=orangeec,
                        aes(x=Creat.Ind...GDP),fill='blue',color='red',
                        binwidth=1)+
  labs(x="Aporte economia naranja al Pib(%)", y="Cantidad de paises",
       title="Contribucion economia naranja al pib en paises latam")+
  theme(legend.position = 'none')+
  theme(panel.background = element_blank(),panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

ggplot()+geom_histogram(data=orangeec,
                        aes(x=Internet.penetration...population),fill='red',color='yellow',
                        binwidth=5)+
  labs(x="Penetracion internet(%)pobllacion", y="Cantidad de paises",
       title="Penetracion de internet en paises latam")+
  theme(legend.position = 'none')+
  theme(panel.background = element_blank(),panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

Para responder al reto agregué la siguiente línea al final del código:
xlim(30,100)+ylim(0,4)+scale_x_continuous(breaks = seq(30,100,by=5))

y funcionó bien

 ggplot()+geom_histogram(data=orangeec,
                          aes(orangeec$`Internet penetration % population`), fill="blue",color="black",
                          binwidth = 5)+
    labs(x="Penetración Internet(%) poblacion ", y="cantidad de de paises",
         title = "Penetración de internet en paises Latam")+
    xlim(30,100)+ #numeración del 30% al 100%
    ylim(0,4)+   #ponemos el eje Yvalores de 0 a 4
    scale_x_continuous(breaks =seq(30,100,by=5) )+ #le colocamos valores cada bara cada  desde el 30% hasta el 100% en tramos de 5%
    
    theme(legend.position = "none")+
    theme(panel.background = element_blank(),panel.grid.major=element_blank(),
          panel.grid.minor=element_blank())```

Hola compañeros,

Espero les sea de mucha ayuda.

ggplot()+geom_histogram(data = orangeec,
                        aes(x=Internet.penetration...population), fill='red',color='yellow',
                        binwidth = 5)+
  labs(x='Penetración Internet (%Población)', y='Cantidad de paises',
       title = 'Penetración Internet en paise LATM') +
  scale_x_continuous(breaks = seq(40,max(100),5))+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(), 
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())```
ggplot()+geom_histogram(data=orangeec, 
                        aes(x=Internet.penetration...population), fill='red', color='gray', binwidth = 5)+
  labs(x="Penetration internet(%) poblacion", y="Cantidad de paises", title="penetration internet in paises LATAM")+
  scale_x_continuous(breaks = seq(40, max(100), 5))+
  theme(legend.position = 'none')+
  theme(panel.background = element_blank(), panel.grid.major = element_blank(), panel.grid.minor = element_blank())

Si al "scale_x_continuous le ponene el break en 0 y no en 40, no causa diferencia.

#Penetracion del Internet ggplot()+geom_histogram(data=orangeec, aes(x=Internet.penetration...population), binwidth = 5)+ theme_classic()+ labs(x="Pentración internet (%poblacion)", y ="Cantidad de piases", title="Penetración de internet en países latam")+ scale_x_continuous(breaks=seq(0,100, by = 5))

Qué clase tan del carajo! Aprendi un monto en tan solo 7:20 minutos.

  • scale_x_continuous(breaks=seq(0,100,5))

El codigo para economia naranja R 4.0.2

ggplot()+geom_histogram(data=mtcars,
                         aes(x=hp), fill="blue", color="red",
                         binwidth = 20)+
  labs(x="Caballos de fuerza", y="cantidad de carros",
       title="Caballos de fuerza en carros seleccionados")+
  xlim(c(80,280))+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(), panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())

Respuesta al reto: agregar el código después de title=“Penetración de internet en paises LATAM”)+

scale_x_continuous(breaks = seq(30,100,by=5))

se debe agregar en el ggplot lo siguiente:

  scale_x_continuous(breaks = c(seq(40,100,5))) +

se debe poner entre geo y labs
geom_histogram(…)+
scale_x_continuous(breaks = seq(40, max(100), 5)) +
labs(…)+

ggplot()+geom_histogram(data=orange,
                        aes(x=IPP),fill="black", color="red",
                        binwidth = 5)+
  labs(x="Internet penetration as percentage population (%)",y="Contries",
       title = "Percentage of the population with Internet (%)")+
  theme(legend.position = "none")+
  theme(panel.background = element_blank(),panel.grid.major = element_blank(),
        panel.grid.minor = element_blank())