Re: [R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-19 Por tema Jose Luis Cañadas Reche

Hola a todos.

Utilizando la sintaxis de dplyr (¿ya nadie usa tapply, ni aggregate, ni 
doby??), creo que buscas algo así, agrupando por país y por stlife..



ess_agrupado <- ess %>% group_by(cntry,stflife) %>%
summarise (n = n()) %>%
mutate(freq = n / sum(n))


ggplot(ess_agrupado, aes (x=as.factor(stflife))) +
geom_bar(aes(y = freq), stat="identity") +
scale_y_continuous(labels=scales::percent) +
ylab("Relative frequencies") + facet_wrap(~cntry)


Saludos


El 19/06/17 a las 06:37, Freddy Omar López Quintero escribió:

2017-06-18 23:28 GMT-04:00 Antonio Rodriguez Andres <
antoniorodriguezandre...@gmail.com>:


Me puede recomendar algún libro donde poder empezar.


​De ggplot2, sin duda el libro de su (¿cismático?) creador es una
referencia obligada:

Wickham: ggplot2 Elegant Graphics for Data Analysis, 2016​
y uno muy bueno de

Chang: R Graphics Cookbook, 2012
¡
​Salud!​




___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

Re: [R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-19 Por tema Pedro Herrero Petisco
Además del llibro de Wickham te recomiendo esta página:
http://www.r-graph-gallery.com/
Suele ayudar mucho a crear los gráficos como quieres.

El 19 de junio de 2017, 6:37, Freddy Omar López Quintero <
freddy.lopez.quint...@gmail.com> escribió:

> 2017-06-18 23:28 GMT-04:00 Antonio Rodriguez Andres <
> antoniorodriguezandre...@gmail.com>:
>
> > Me puede recomendar algún libro donde poder empezar.
>
>
> ​De ggplot2, sin duda el libro de su (¿cismático?) creador es una
> referencia obligada:
>
> Wickham: ggplot2 Elegant Graphics for Data Analysis, 2016​
> >
>
> y uno muy bueno de
>
> Chang: R Graphics Cookbook, 2012
> >
>
> ¡
> ​Salud!​
>
>
> --
> «Pídeles sus títulos a los que te persiguen, pregúntales
> cuándo nacieron, diles que te demuestren su existencia.»
>
> Rafael Cadenas
>
> [[alternative HTML version deleted]]
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>

[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

Re: [R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-18 Por tema Freddy Omar López Quintero
2017-06-18 23:28 GMT-04:00 Antonio Rodriguez Andres <
antoniorodriguezandre...@gmail.com>:

> Me puede recomendar algún libro donde poder empezar.


​De ggplot2, sin duda el libro de su (¿cismático?) creador es una
referencia obligada:

Wickham: ggplot2 Elegant Graphics for Data Analysis, 2016​
>

y uno muy bueno de

Chang: R Graphics Cookbook, 2012
>

¡
​Salud!​


-- 
«Pídeles sus títulos a los que te persiguen, pregúntales
cuándo nacieron, diles que te demuestren su existencia.»

Rafael Cadenas

[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

Re: [R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-18 Por tema Antonio Rodriguez Andres
Muchas gracias. Me puede recomendar algún libro donde poder empezar.

Gracias

El 18/06/2017 9:46 p. m., <javier.ruben.marcu...@gmail.com> escribió:

>
>
> Estimado Antonio Rodriguez Andres
>
>
>
> Usted dice que está en sus inicios con R, y desea realizar un gráfico.
> Esto no es problema, el inconveniente es que está mezclando librerías, es
> lógico, se puede y facilita el trabajo, pero como usted no tiene la
> experiencia necesaria está mezclando conceptos y formas de trabajo
> distintas.
>
>
>
> Le recomiendo que pare, busque un ejemplo o un libro de R donde hay algo
> semejante a lo que usted desea, realiza unos ejercicios y comienza otra vez.
>
>
>
> Por ejemplo ggplot2 tiene algunos efectos gráficos de presentación
> vistosos, pero la forma de trabajo requiere conocer algo más el lenguaje,
> si intenta lo mismo pero con solo los paquetes básicos comprenderá cómo se
> realizan los cálculos, algo de trabajo con datos, algunas alternativas para
> realizar el mismo trabajo de distinta forma, y luego busca utilizar ggplot2
> como pretende ahora. Creo que las posibilidades de obtener mejores
> resultados se incrementan si ahora se frena y puede replantear el problema
> en su mente.
>
>
>
> Espere, descanse, el lunes comienza otra vez desde cero y el martes
> regresa a su problema, invertirá mejor su tiempo con R si aumenta el manejo
> de lo básico (antes de usar varias librerías o alternativas que aparecieron
> como sugerencias a su pregunta).
>
>
>
> Javier Rubén Marcuzzi
>
>
>
> *De: *Antonio Rodriguez Andres <antoniorodriguezandre...@gmail.com>
> *Enviado: *domingo, 18 de junio de 2017 21:20
> *Para: *Carlos J. Gil Bellosta <c...@datanalytics.com>
> *CC: *r-help-es <r-help-es@r-project.org>
> *Asunto: *Re: [R-es] Problema con Histograma con porcentajes usando ggplot
>
>
>
> Creo que esto me da para DK, y luego veré como aplicar el barplot
>
> ess   %>%
>   filter(cntry %in% c("DK")) %>%
> count (stflife) %>%
> mutate (freq = (n /sum(n)*100))%>%
> print
>
>
>
> 2017-06-18 19:01 GMT-05:00 Antonio Rodriguez Andres <
> antoniorodriguezandre...@gmail.com>:
>
> He conseguido el total para un país, pero no me deja usar percent =
> count() /sum(count), alguna idea, entiendo que puedo esar la misma sintaxis
> para el barplot
>
> ess   %>%
>   filter(cntry %in% c("DK")) %>%
> count (stflife) %>%
> print
>
>
>
> 2017-06-18 18:07 GMT-05:00 Antonio Rodriguez Andres <
> antoniorodriguezandre...@gmail.com>:
>
> #Simple table con frecuencias absolutas y crear relativas
>
> count =table(ess$stflife)
> percent = 100* (count)/sum(count)
>
> Carlos he creado a esto a nivel general en vez de usar prop.table. Según
> lo que dices o entiendo, debo de usar la función
>
> ddply para hacerlo a nivel de todos los paises, y entiendo que ddply (,
> c(""), debo de indicar los paises?
>
> Saludos
>
>
>
> 2017-06-18 17:37 GMT-05:00 Carlos J. Gil Bellosta <c...@datanalytics.com>:
>
> 1) Agrega por país y nivel (en freq).
>
> 2) Por país, haz algo así como pct = 100 * freq / sum(freq).
>
>
>
> Con plyr, dos líneas.
>
>
>
> El 19 de junio de 2017, 0:20, Antonio Rodriguez Andres <
> antoniorodriguezandre...@gmail.com> escribió:
>
> Gracias. Alguna idea de que usar para calcular los porcentajes y
> almacenarlos. Se puede usar flat table?
>
>
>
> El 18/06/2017 4:50 p. m., "Carlos J. Gil Bellosta" <c...@datanalytics.com>
> escribió:
>
> Los porcentajes que obtienes con tu código son sobre todas las facetas, no
> país a país.
>
>
>
> Calcula los porcentajes previamente a por país y representa esa columna en
> las barras.
>
>
>
> Un saludo,
>
>
>
> Carlos J. Gil Bellosta
>
> http://www.datanalytics.com
>
>
>
>
>
>
>
> El 18 de junio de 2017, 18:23, Antonio Rodriguez Andres <
> antoniorodriguezandre...@gmail.com> escribió:
>
> Estimados
>
> Soy un nuevo usario de R, y estoy usando como base de datos el European
> Social Survey, que tiene datos de 40,000 individuos, y alrededor de 23
> países europeos. Lo que he seleccionado es la útima  ola, el round 7, para
> el año 2014.
>
> He leido los datos, desde SPSS y aquí tienen la base de datos y que tipo
> de objetos se han generado, y tambíen la distribución por pais de la
> muestra. No he usado los weights del survey todavía, solo estoy explorando
> los datos.
>
> class(ess)
>
> ## [1] "lbl_df" "data.frame"
>
> frq(ess$cntry)
>
> ## # Country
> ##
> ##  val 

Re: [R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-18 Por tema Antonio Rodriguez Andres
#Simple table con frecuencias absolutas y crear relativas

count =table(ess$stflife)
percent = 100* (count)/sum(count)

Carlos he creado a esto a nivel general en vez de usar prop.table. Según lo
que dices o entiendo, debo de usar la función
ddply para hacerlo a nivel de todos los paises, y entiendo que ddply (,
c(""), debo de indicar los paises?
Saludos

2017-06-18 17:37 GMT-05:00 Carlos J. Gil Bellosta :

> 1) Agrega por país y nivel (en freq).
> 2) Por país, haz algo así como pct = 100 * freq / sum(freq).
>
> Con plyr, dos líneas.
>
> El 19 de junio de 2017, 0:20, Antonio Rodriguez Andres <
> antoniorodriguezandre...@gmail.com> escribió:
>
>> Gracias. Alguna idea de que usar para calcular los porcentajes y
>> almacenarlos. Se puede usar flat table?
>>
>> El 18/06/2017 4:50 p. m., "Carlos J. Gil Bellosta" 
>> escribió:
>>
>>> Los porcentajes que obtienes con tu código son sobre todas las facetas,
>>> no país a país.
>>>
>>> Calcula los porcentajes previamente a por país y representa esa columna
>>> en las barras.
>>>
>>> Un saludo,
>>>
>>> Carlos J. Gil Bellosta
>>> http://www.datanalytics.com
>>>
>>>
>>>
>>> El 18 de junio de 2017, 18:23, Antonio Rodriguez Andres <
>>> antoniorodriguezandre...@gmail.com> escribió:
>>>
 Estimados

 Soy un nuevo usario de R, y estoy usando como base de datos el European
 Social Survey, que tiene datos de 40,000 individuos, y alrededor de 23
 países europeos. Lo que he seleccionado es la útima  ola, el round 7, para
 el año 2014.

 He leido los datos, desde SPSS y aquí tienen la base de datos y que
 tipo de objetos se han generado, y tambíen la distribución por pais de la
 muestra. No he usado los weights del survey todavía, solo estoy explorando
 los datos.

 class(ess)

 ## [1] "lbl_df" "data.frame"

 frq(ess$cntry)

 ## # Country
 ##
 ##  val  label  frq raw.prc valid.prc cum.prc
 ##1Austria 17954.47  4.474.47
 ##2Belgium 17694.40  4.408.87
 ##3Switzerland 15323.81  3.81   12.68
 ##4 Czech Republic 21485.35  5.35   18.03
 ##5Germany 30457.58  7.58   25.60
 ##6Denmark 15023.74  3.74   29.34
 ##7Estonia 20515.10  5.10   34.45
 ##8  Spain 19254.79  4.79   39.24
 ##9Finland 20875.19  5.19   44.43
 ##   10 France 19174.77  4.77   49.20
 ##   11 United Kingdom 22645.63  5.63   54.83
 ##   12Hungary 16984.23  4.23   59.06
 ##   13Ireland 23905.95  5.95   65.01
 ##   14 Israel 25626.38  6.38   71.38
 ##   15  Lithuania 22505.60  5.60   76.98
 ##   16Netherlands 19194.78  4.78   81.76
 ##   17 Norway 14363.57  3.57   85.33
 ##   18 Poland 16154.02  4.02   89.35
 ##   19   Portugal 12653.15  3.15   92.50
 ##   20 Sweden 17914.46  4.46   96.95
 ##   21   Slovenia 12243.05  3.05  100.00
 ##   NA NA00.00NA  NA
 Ahora voy a hacer un histograma de la variable satisfaccion con la
 vida,  cuyo rango es de 0-10 (numeros enteros, donde mayor valor indica
 mayor satisfacción con la vida.

 get_labels(ess$stflife)


 ##  [1] "Extremely dissatisfied" "1"
 ##  [3] "2"  "3"
 ##  [5] "4"  "5"
 ##  [7] "6"  "7"
 ##  [9] "8"  "9"
 ## [11] "Extremely satisfied""Refusal"

 ## [13] "Don't know" "No answer"

 Lo que he hecho es hacer una tabla de la distribución de esa variable
 para un sólo pais Dinamarca (DK)

 flat_table(subset(ess, cntry %in% c("DK")), stflife, margin= "row")

 ## x 0 1 2 3 4 5 6 7 8 910
 ##

 ##0.33  0.27  0.47  1.33  0.93  2.87  3.67  8.20 28.40 29.53 24.00


 Sin embargo al hacer un histrogama para los paises con ggplot, anda
 algo mal con los porcentajes. Por ejemplo sabemos que un 24 % respondió que
 están muy satisfechos en DK. Sin embargo

 los porcentajes son muy pequeños.


 myplot = ggplot(ess, aes (stflife)) +
   geom_bar(aes(y = (..count..)/sum(..count..))) +
   scale_y_continuous(labels=scales::percent) +
   ylab("Relative frequencies") + facet_wrap(~cntry)

 plot(myplot)

 [image: Inline images 1]


 ___
 R-help-es mailing list
 R-help-es@r-project.org
 https://stat.ethz.ch/mailman/listinfo/r-help-es

>>>
>>>
>


-- 

Member, Editorial Committee, *The Economic and Labour Relations Review* (a

Re: [R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-18 Por tema Antonio Rodriguez Andres
Gracias. Voy a estudiarlo. Soy neófito y me llevará algún tiempo.

El 18/06/2017 5:37 p. m., "Carlos J. Gil Bellosta" 
escribió:

> 1) Agrega por país y nivel (en freq).
> 2) Por país, haz algo así como pct = 100 * freq / sum(freq).
>
> Con plyr, dos líneas.
>
> El 19 de junio de 2017, 0:20, Antonio Rodriguez Andres <
> antoniorodriguezandre...@gmail.com> escribió:
>
>> Gracias. Alguna idea de que usar para calcular los porcentajes y
>> almacenarlos. Se puede usar flat table?
>>
>> El 18/06/2017 4:50 p. m., "Carlos J. Gil Bellosta" 
>> escribió:
>>
>>> Los porcentajes que obtienes con tu código son sobre todas las facetas,
>>> no país a país.
>>>
>>> Calcula los porcentajes previamente a por país y representa esa columna
>>> en las barras.
>>>
>>> Un saludo,
>>>
>>> Carlos J. Gil Bellosta
>>> http://www.datanalytics.com
>>>
>>>
>>>
>>> El 18 de junio de 2017, 18:23, Antonio Rodriguez Andres <
>>> antoniorodriguezandre...@gmail.com> escribió:
>>>
 Estimados

 Soy un nuevo usario de R, y estoy usando como base de datos el European
 Social Survey, que tiene datos de 40,000 individuos, y alrededor de 23
 países europeos. Lo que he seleccionado es la útima  ola, el round 7, para
 el año 2014.

 He leido los datos, desde SPSS y aquí tienen la base de datos y que
 tipo de objetos se han generado, y tambíen la distribución por pais de la
 muestra. No he usado los weights del survey todavía, solo estoy explorando
 los datos.

 class(ess)

 ## [1] "lbl_df" "data.frame"

 frq(ess$cntry)

 ## # Country
 ##
 ##  val  label  frq raw.prc valid.prc cum.prc
 ##1Austria 17954.47  4.474.47
 ##2Belgium 17694.40  4.408.87
 ##3Switzerland 15323.81  3.81   12.68
 ##4 Czech Republic 21485.35  5.35   18.03
 ##5Germany 30457.58  7.58   25.60
 ##6Denmark 15023.74  3.74   29.34
 ##7Estonia 20515.10  5.10   34.45
 ##8  Spain 19254.79  4.79   39.24
 ##9Finland 20875.19  5.19   44.43
 ##   10 France 19174.77  4.77   49.20
 ##   11 United Kingdom 22645.63  5.63   54.83
 ##   12Hungary 16984.23  4.23   59.06
 ##   13Ireland 23905.95  5.95   65.01
 ##   14 Israel 25626.38  6.38   71.38
 ##   15  Lithuania 22505.60  5.60   76.98
 ##   16Netherlands 19194.78  4.78   81.76
 ##   17 Norway 14363.57  3.57   85.33
 ##   18 Poland 16154.02  4.02   89.35
 ##   19   Portugal 12653.15  3.15   92.50
 ##   20 Sweden 17914.46  4.46   96.95
 ##   21   Slovenia 12243.05  3.05  100.00
 ##   NA NA00.00NA  NA
 Ahora voy a hacer un histograma de la variable satisfaccion con la
 vida,  cuyo rango es de 0-10 (numeros enteros, donde mayor valor indica
 mayor satisfacción con la vida.

 get_labels(ess$stflife)


 ##  [1] "Extremely dissatisfied" "1"
 ##  [3] "2"  "3"
 ##  [5] "4"  "5"
 ##  [7] "6"  "7"
 ##  [9] "8"  "9"
 ## [11] "Extremely satisfied""Refusal"

 ## [13] "Don't know" "No answer"

 Lo que he hecho es hacer una tabla de la distribución de esa variable
 para un sólo pais Dinamarca (DK)

 flat_table(subset(ess, cntry %in% c("DK")), stflife, margin= "row")

 ## x 0 1 2 3 4 5 6 7 8 910
 ##

 ##0.33  0.27  0.47  1.33  0.93  2.87  3.67  8.20 28.40 29.53 24.00


 Sin embargo al hacer un histrogama para los paises con ggplot, anda
 algo mal con los porcentajes. Por ejemplo sabemos que un 24 % respondió que
 están muy satisfechos en DK. Sin embargo

 los porcentajes son muy pequeños.


 myplot = ggplot(ess, aes (stflife)) +
   geom_bar(aes(y = (..count..)/sum(..count..))) +
   scale_y_continuous(labels=scales::percent) +
   ylab("Relative frequencies") + facet_wrap(~cntry)

 plot(myplot)

 [image: Inline images 1]


 ___
 R-help-es mailing list
 R-help-es@r-project.org
 https://stat.ethz.ch/mailman/listinfo/r-help-es

>>>
>>>
>
___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

Re: [R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-18 Por tema Carlos J. Gil Bellosta
1) Agrega por país y nivel (en freq).
2) Por país, haz algo así como pct = 100 * freq / sum(freq).

Con plyr, dos líneas.

El 19 de junio de 2017, 0:20, Antonio Rodriguez Andres <
antoniorodriguezandre...@gmail.com> escribió:

> Gracias. Alguna idea de que usar para calcular los porcentajes y
> almacenarlos. Se puede usar flat table?
>
> El 18/06/2017 4:50 p. m., "Carlos J. Gil Bellosta" 
> escribió:
>
>> Los porcentajes que obtienes con tu código son sobre todas las facetas,
>> no país a país.
>>
>> Calcula los porcentajes previamente a por país y representa esa columna
>> en las barras.
>>
>> Un saludo,
>>
>> Carlos J. Gil Bellosta
>> http://www.datanalytics.com
>>
>>
>>
>> El 18 de junio de 2017, 18:23, Antonio Rodriguez Andres <
>> antoniorodriguezandre...@gmail.com> escribió:
>>
>>> Estimados
>>>
>>> Soy un nuevo usario de R, y estoy usando como base de datos el European
>>> Social Survey, que tiene datos de 40,000 individuos, y alrededor de 23
>>> países europeos. Lo que he seleccionado es la útima  ola, el round 7, para
>>> el año 2014.
>>>
>>> He leido los datos, desde SPSS y aquí tienen la base de datos y que tipo
>>> de objetos se han generado, y tambíen la distribución por pais de la
>>> muestra. No he usado los weights del survey todavía, solo estoy explorando
>>> los datos.
>>>
>>> class(ess)
>>>
>>> ## [1] "lbl_df" "data.frame"
>>>
>>> frq(ess$cntry)
>>>
>>> ## # Country
>>> ##
>>> ##  val  label  frq raw.prc valid.prc cum.prc
>>> ##1Austria 17954.47  4.474.47
>>> ##2Belgium 17694.40  4.408.87
>>> ##3Switzerland 15323.81  3.81   12.68
>>> ##4 Czech Republic 21485.35  5.35   18.03
>>> ##5Germany 30457.58  7.58   25.60
>>> ##6Denmark 15023.74  3.74   29.34
>>> ##7Estonia 20515.10  5.10   34.45
>>> ##8  Spain 19254.79  4.79   39.24
>>> ##9Finland 20875.19  5.19   44.43
>>> ##   10 France 19174.77  4.77   49.20
>>> ##   11 United Kingdom 22645.63  5.63   54.83
>>> ##   12Hungary 16984.23  4.23   59.06
>>> ##   13Ireland 23905.95  5.95   65.01
>>> ##   14 Israel 25626.38  6.38   71.38
>>> ##   15  Lithuania 22505.60  5.60   76.98
>>> ##   16Netherlands 19194.78  4.78   81.76
>>> ##   17 Norway 14363.57  3.57   85.33
>>> ##   18 Poland 16154.02  4.02   89.35
>>> ##   19   Portugal 12653.15  3.15   92.50
>>> ##   20 Sweden 17914.46  4.46   96.95
>>> ##   21   Slovenia 12243.05  3.05  100.00
>>> ##   NA NA00.00NA  NA
>>> Ahora voy a hacer un histograma de la variable satisfaccion con la
>>> vida,  cuyo rango es de 0-10 (numeros enteros, donde mayor valor indica
>>> mayor satisfacción con la vida.
>>>
>>> get_labels(ess$stflife)
>>>
>>>
>>> ##  [1] "Extremely dissatisfied" "1"
>>> ##  [3] "2"  "3"
>>> ##  [5] "4"  "5"
>>> ##  [7] "6"  "7"
>>> ##  [9] "8"  "9"
>>> ## [11] "Extremely satisfied""Refusal"
>>>
>>> ## [13] "Don't know" "No answer"
>>>
>>> Lo que he hecho es hacer una tabla de la distribución de esa variable
>>> para un sólo pais Dinamarca (DK)
>>>
>>> flat_table(subset(ess, cntry %in% c("DK")), stflife, margin= "row")
>>>
>>> ## x 0 1 2 3 4 5 6 7 8 910
>>> ##
>>>
>>> ##0.33  0.27  0.47  1.33  0.93  2.87  3.67  8.20 28.40 29.53 24.00
>>>
>>>
>>> Sin embargo al hacer un histrogama para los paises con ggplot, anda algo
>>> mal con los porcentajes. Por ejemplo sabemos que un 24 % respondió que
>>> están muy satisfechos en DK. Sin embargo
>>>
>>> los porcentajes son muy pequeños.
>>>
>>>
>>> myplot = ggplot(ess, aes (stflife)) +
>>>   geom_bar(aes(y = (..count..)/sum(..count..))) +
>>>   scale_y_continuous(labels=scales::percent) +
>>>   ylab("Relative frequencies") + facet_wrap(~cntry)
>>>
>>> plot(myplot)
>>>
>>> [image: Inline images 1]
>>>
>>>
>>> ___
>>> R-help-es mailing list
>>> R-help-es@r-project.org
>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>
>>
>>
___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

Re: [R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-18 Por tema Antonio Rodriguez Andres
Gracias. Alguna idea de que usar para calcular los porcentajes y
almacenarlos. Se puede usar flat table?

El 18/06/2017 4:50 p. m., "Carlos J. Gil Bellosta" 
escribió:

> Los porcentajes que obtienes con tu código son sobre todas las facetas, no
> país a país.
>
> Calcula los porcentajes previamente a por país y representa esa columna en
> las barras.
>
> Un saludo,
>
> Carlos J. Gil Bellosta
> http://www.datanalytics.com
>
>
>
> El 18 de junio de 2017, 18:23, Antonio Rodriguez Andres <
> antoniorodriguezandre...@gmail.com> escribió:
>
>> Estimados
>>
>> Soy un nuevo usario de R, y estoy usando como base de datos el European
>> Social Survey, que tiene datos de 40,000 individuos, y alrededor de 23
>> países europeos. Lo que he seleccionado es la útima  ola, el round 7, para
>> el año 2014.
>>
>> He leido los datos, desde SPSS y aquí tienen la base de datos y que tipo
>> de objetos se han generado, y tambíen la distribución por pais de la
>> muestra. No he usado los weights del survey todavía, solo estoy explorando
>> los datos.
>>
>> class(ess)
>>
>> ## [1] "lbl_df" "data.frame"
>>
>> frq(ess$cntry)
>>
>> ## # Country
>> ##
>> ##  val  label  frq raw.prc valid.prc cum.prc
>> ##1Austria 17954.47  4.474.47
>> ##2Belgium 17694.40  4.408.87
>> ##3Switzerland 15323.81  3.81   12.68
>> ##4 Czech Republic 21485.35  5.35   18.03
>> ##5Germany 30457.58  7.58   25.60
>> ##6Denmark 15023.74  3.74   29.34
>> ##7Estonia 20515.10  5.10   34.45
>> ##8  Spain 19254.79  4.79   39.24
>> ##9Finland 20875.19  5.19   44.43
>> ##   10 France 19174.77  4.77   49.20
>> ##   11 United Kingdom 22645.63  5.63   54.83
>> ##   12Hungary 16984.23  4.23   59.06
>> ##   13Ireland 23905.95  5.95   65.01
>> ##   14 Israel 25626.38  6.38   71.38
>> ##   15  Lithuania 22505.60  5.60   76.98
>> ##   16Netherlands 19194.78  4.78   81.76
>> ##   17 Norway 14363.57  3.57   85.33
>> ##   18 Poland 16154.02  4.02   89.35
>> ##   19   Portugal 12653.15  3.15   92.50
>> ##   20 Sweden 17914.46  4.46   96.95
>> ##   21   Slovenia 12243.05  3.05  100.00
>> ##   NA NA00.00NA  NA
>> Ahora voy a hacer un histograma de la variable satisfaccion con la vida,
>> cuyo rango es de 0-10 (numeros enteros, donde mayor valor indica mayor
>> satisfacción con la vida.
>>
>> get_labels(ess$stflife)
>>
>>
>> ##  [1] "Extremely dissatisfied" "1"
>> ##  [3] "2"  "3"
>> ##  [5] "4"  "5"
>> ##  [7] "6"  "7"
>> ##  [9] "8"  "9"
>> ## [11] "Extremely satisfied""Refusal"
>>
>> ## [13] "Don't know" "No answer"
>>
>> Lo que he hecho es hacer una tabla de la distribución de esa variable
>> para un sólo pais Dinamarca (DK)
>>
>> flat_table(subset(ess, cntry %in% c("DK")), stflife, margin= "row")
>>
>> ## x 0 1 2 3 4 5 6 7 8 910
>> ##
>>
>> ##0.33  0.27  0.47  1.33  0.93  2.87  3.67  8.20 28.40 29.53 24.00
>>
>>
>> Sin embargo al hacer un histrogama para los paises con ggplot, anda algo
>> mal con los porcentajes. Por ejemplo sabemos que un 24 % respondió que
>> están muy satisfechos en DK. Sin embargo
>>
>> los porcentajes son muy pequeños.
>>
>>
>> myplot = ggplot(ess, aes (stflife)) +
>>   geom_bar(aes(y = (..count..)/sum(..count..))) +
>>   scale_y_continuous(labels=scales::percent) +
>>   ylab("Relative frequencies") + facet_wrap(~cntry)
>>
>> plot(myplot)
>>
>> [image: Inline images 1]
>>
>>
>> ___
>> R-help-es mailing list
>> R-help-es@r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
>
>
___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

Re: [R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-18 Por tema Carlos J. Gil Bellosta
Los porcentajes que obtienes con tu código son sobre todas las facetas, no
país a país.

Calcula los porcentajes previamente a por país y representa esa columna en
las barras.

Un saludo,

Carlos J. Gil Bellosta
http://www.datanalytics.com



El 18 de junio de 2017, 18:23, Antonio Rodriguez Andres <
antoniorodriguezandre...@gmail.com> escribió:

> Estimados
>
> Soy un nuevo usario de R, y estoy usando como base de datos el European
> Social Survey, que tiene datos de 40,000 individuos, y alrededor de 23
> países europeos. Lo que he seleccionado es la útima  ola, el round 7, para
> el año 2014.
>
> He leido los datos, desde SPSS y aquí tienen la base de datos y que tipo
> de objetos se han generado, y tambíen la distribución por pais de la
> muestra. No he usado los weights del survey todavía, solo estoy explorando
> los datos.
>
> class(ess)
>
> ## [1] "lbl_df" "data.frame"
>
> frq(ess$cntry)
>
> ## # Country
> ##
> ##  val  label  frq raw.prc valid.prc cum.prc
> ##1Austria 17954.47  4.474.47
> ##2Belgium 17694.40  4.408.87
> ##3Switzerland 15323.81  3.81   12.68
> ##4 Czech Republic 21485.35  5.35   18.03
> ##5Germany 30457.58  7.58   25.60
> ##6Denmark 15023.74  3.74   29.34
> ##7Estonia 20515.10  5.10   34.45
> ##8  Spain 19254.79  4.79   39.24
> ##9Finland 20875.19  5.19   44.43
> ##   10 France 19174.77  4.77   49.20
> ##   11 United Kingdom 22645.63  5.63   54.83
> ##   12Hungary 16984.23  4.23   59.06
> ##   13Ireland 23905.95  5.95   65.01
> ##   14 Israel 25626.38  6.38   71.38
> ##   15  Lithuania 22505.60  5.60   76.98
> ##   16Netherlands 19194.78  4.78   81.76
> ##   17 Norway 14363.57  3.57   85.33
> ##   18 Poland 16154.02  4.02   89.35
> ##   19   Portugal 12653.15  3.15   92.50
> ##   20 Sweden 17914.46  4.46   96.95
> ##   21   Slovenia 12243.05  3.05  100.00
> ##   NA NA00.00NA  NA
> Ahora voy a hacer un histograma de la variable satisfaccion con la vida,
> cuyo rango es de 0-10 (numeros enteros, donde mayor valor indica mayor
> satisfacción con la vida.
>
> get_labels(ess$stflife)
>
>
> ##  [1] "Extremely dissatisfied" "1"
> ##  [3] "2"  "3"
> ##  [5] "4"  "5"
> ##  [7] "6"  "7"
> ##  [9] "8"  "9"
> ## [11] "Extremely satisfied""Refusal"
>
> ## [13] "Don't know" "No answer"
>
> Lo que he hecho es hacer una tabla de la distribución de esa variable para
> un sólo pais Dinamarca (DK)
>
> flat_table(subset(ess, cntry %in% c("DK")), stflife, margin= "row")
>
> ## x 0 1 2 3 4 5 6 7 8 910
> ##
>
> ##0.33  0.27  0.47  1.33  0.93  2.87  3.67  8.20 28.40 29.53 24.00
>
>
> Sin embargo al hacer un histrogama para los paises con ggplot, anda algo
> mal con los porcentajes. Por ejemplo sabemos que un 24 % respondió que
> están muy satisfechos en DK. Sin embargo
>
> los porcentajes son muy pequeños.
>
>
> myplot = ggplot(ess, aes (stflife)) +
>   geom_bar(aes(y = (..count..)/sum(..count..))) +
>   scale_y_continuous(labels=scales::percent) +
>   ylab("Relative frequencies") + facet_wrap(~cntry)
>
> plot(myplot)
>
> [image: Inline images 1]
>
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

[R-es] Problema con Histograma con porcentajes usando ggplot

2017-06-18 Por tema Antonio Rodriguez Andres
Estimados

Soy un nuevo usario de R, y estoy usando como base de datos el European
Social Survey, que tiene datos de 40,000 individuos, y alrededor de 23
países europeos. Lo que he seleccionado es la útima  ola, el round 7, para
el año 2014.

He leido los datos, desde SPSS y aquí tienen la base de datos y que tipo de
objetos se han generado, y tambíen la distribución por pais de la muestra.
No he usado los weights del survey todavía, solo estoy explorando los datos.

class(ess)

## [1] "lbl_df" "data.frame"

frq(ess$cntry)

## # Country
##
##  val  label  frq raw.prc valid.prc cum.prc
##1Austria 17954.47  4.474.47
##2Belgium 17694.40  4.408.87
##3Switzerland 15323.81  3.81   12.68
##4 Czech Republic 21485.35  5.35   18.03
##5Germany 30457.58  7.58   25.60
##6Denmark 15023.74  3.74   29.34
##7Estonia 20515.10  5.10   34.45
##8  Spain 19254.79  4.79   39.24
##9Finland 20875.19  5.19   44.43
##   10 France 19174.77  4.77   49.20
##   11 United Kingdom 22645.63  5.63   54.83
##   12Hungary 16984.23  4.23   59.06
##   13Ireland 23905.95  5.95   65.01
##   14 Israel 25626.38  6.38   71.38
##   15  Lithuania 22505.60  5.60   76.98
##   16Netherlands 19194.78  4.78   81.76
##   17 Norway 14363.57  3.57   85.33
##   18 Poland 16154.02  4.02   89.35
##   19   Portugal 12653.15  3.15   92.50
##   20 Sweden 17914.46  4.46   96.95
##   21   Slovenia 12243.05  3.05  100.00
##   NA NA00.00NA  NA
Ahora voy a hacer un histograma de la variable satisfaccion con la vida,
cuyo rango es de 0-10 (numeros enteros, donde mayor valor indica mayor
satisfacción con la vida.

get_labels(ess$stflife)


##  [1] "Extremely dissatisfied" "1"
##  [3] "2"  "3"
##  [5] "4"  "5"
##  [7] "6"  "7"
##  [9] "8"  "9"
## [11] "Extremely satisfied""Refusal"

## [13] "Don't know" "No answer"

Lo que he hecho es hacer una tabla de la distribución de esa variable para
un sólo pais Dinamarca (DK)

flat_table(subset(ess, cntry %in% c("DK")), stflife, margin= "row")

## x 0 1 2 3 4 5 6 7 8 910
##

##0.33  0.27  0.47  1.33  0.93  2.87  3.67  8.20 28.40 29.53 24.00


Sin embargo al hacer un histrogama para los paises con ggplot, anda algo
mal con los porcentajes. Por ejemplo sabemos que un 24 % respondió que
están muy satisfechos en DK. Sin embargo

los porcentajes son muy pequeños.


myplot = ggplot(ess, aes (stflife)) +
  geom_bar(aes(y = (..count..)/sum(..count..))) +
  scale_y_continuous(labels=scales::percent) +
  ylab("Relative frequencies") + facet_wrap(~cntry)

plot(myplot)

[image: Inline images 1]
___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es