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 - histogramas - ggplot2

18/35
Recursos

Aportes 44

Preguntas 5

Ordenar por:

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

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())

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

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')

#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())

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.

Vengo hacer pequeñas aportes que les puede servir a personas nuevas así que sigan leyendo 🤓👇

Bueno este es el código de la clase pero cuando lo ejecuto me aparece error y es que GDP.PC no se encuentra en el entorno actual de R, es decir no encuentra esa columna en el Data Set .

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

Así que para solucionarlo les dejo esta alternativa que si funciona para la nueva versión de R recuerden escribir todo el nombre de la columna del Data set, esta es la alternativa que use👇 :

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

El único cambio fue ponerlos en esa comillas y me funciono, para los otros es lo mismo utilizando esas comillas pero colocando el nombre completo que les aparece en el Data Set si les aparece con estos signos “$,%,&”, se los deben poner si no les va aparece el error que dije anteriormente 👆, espero que les sirva 👩‍💻🤓.

Hola! Este vídeo de Youtube explica más en profundidad sobre ggplot2
https://www.youtube.com/watch?v=0wpLOsqwhWs&t=163s

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))

se debe agregar en el ggplot lo siguiente:

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

Independiente de lo desactualizado que este el curso, desafortunadamente es un curso como en la mayoría de platzi en la parte practica se encargan de hacer un ejemplo que internamente definieron para aplicar pero no explican en absolutamente nada cada consulta que hacen o por lo menos su sintaxis que es lo que realmente la gente necesita aprender, a esta altura del curso es la sensación.

Seguramente no haga eco esto, pero es así.

# 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

gracias a todos por sus aportes, son geniales.

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

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

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

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"))```


![](https://static.platzi.com/media/user_upload/image-941013f8-6c5e-40aa-9f7a-75137dc190a9.jpg)

Esta fue mi solución:

ggplot() + geom_histogram(data = orangeec,aes(x=Internet.penetration...population), fill = "blue", color = "red",
                          binwidth = 5) + labs(x="PIB per Capita", title = "PIB Per capita en paises latam") + theme(legend.position = "none" )+
  theme(panel.background = element_blank(), panel.grid.major = element_blank(), panel.grid.minor = element_blank()) + scale_x_continuous(breaks =seq(0,100, by = 5))


Hola!
Un aporte, https://colorhunt.co/ paletas de colores con su respectivo código. Solamente es cambiar el nombre del color por el código, ejemplo: “blue” por “#2146C7”

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

Desafio:

ggplot()+geom_histogram(data = orangeec,
                        aes(x=Internet.penetration...population), fill="red", color="yellow", # con fill elijo el color de relleno de mis barras, con color el color de contorno
                        binwidth = 5)+
  scale_x_continuous(breaks = seq(40,max(100),5))+
  labs(x= "Penetracion internet (%)población", y="Cantidad de paises",
       title= "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())

Resultado:

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())
 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 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())