Generando informes

Pasos para la pre-entrega y Entrega de proyecto final.

R Markdown documents are fully reproducible. Use a productive notebook interface to weave together narrative text and code to produce elegantly formatted output. Use multiple languages including R, Python, and SQL.

Más información sobre armado de columnas en rmarkdown-cookbook

imgen hex de Rmarkdown

Pasos previos

  • Preparo librerias con las que voy a trabajar

  • Revision del dataset

  • Descargar base en Kaggle

  • Para crear un nuevo chunk de ejecución de código utilizo \(CTRL + ALT + I\)

  • \(\text{porcentaje Youtube} = \frac{\text{(Promedio Youtube)}}{\text{(Promedio Total)}}*100\)

  • \(\text{porcentaje Spotify} = \frac{\text{(Promedio Spotify)}}{\text{(Promedio Total)}}*100\)

Spotify_youtube_reducido <- Spotify_youtube %>% 
  select(Artist, Track, Album_type, Stream, Channel, Views) %>% 
  group_by(Artist) %>%
  summarise(
    promedio_youtube = mean(Views),
    promedio_spotify = mean(Stream),
    promedio_total = mean(Views+Stream),
    porcent_Y = round(promedio_youtube/promedio_total*100,2),
    porcent_S = round(promedio_spotify/promedio_total*100,2)) %>%
  arrange(desc(promedio_total)) %>% 
  head(10)

Spotify_youtube_reducido$promedio_youtube <- format(Spotify_youtube_reducido$promedio_youtube, 
                                                    big.mark= ".", justify= "right")
## Warning in prettyNum(.Internal(format(x, trim, digits, nsmall, width, 3L, :
## 'big.mark' and 'decimal.mark' are both '.', which could be confusing

Tabla simple

Un ejemplo de tabla simple con las fechas de entrega de proyecto final

Entregas Fecha inicio Fecha Límite
Pre-entrega 03 de abril 10 de abril
Entrega 19 de abril 9 de mayo
Artistas más escuchados en Spotify y Youtube
Artist promedio_youtube promedio_spotify promedio_total porcent_Y porcent_S
Ed Sheeran 1.546.020.777 1439488156 2985508933 51.78 48.22
Justin Bieber 1.099.106.024 1209776742 2308882766 47.60 52.40
Coldplay 999.727.788 1177847824 2177575612 45.91 54.09
Post Malone 639.442.021 1525126385 2164568406 29.54 70.46
Dua Lipa 821.633.931 1340807627 2162441558 38.00 62.00
Bruno Mars 1.024.091.923 1089786295 2113878218 48.45 51.55
Imagine Dragons 909.378.524 1185831093 2095209617 43.40 56.60
The Weeknd 704.603.315 1303197338 2007800653 35.09 64.91
Katy Perry 1.312.063.208 660732870 1972796077 66.51 33.49
Calvin Harris 975.847.614 954854185 1930701799 50.54 49.46
Fuente: kaggle.com
datatable(Spotify_youtube_reducido)

Visualización de datos

Gráficos con ggplot2

ggplot(Spotify_youtube_reducido, aes(x = Artist, y = reorder(porcent_Y, desc(Artist)))) +
  geom_col(fill = "pink", alpha = 1) +
  theme_bw() + 
  coord_flip() + 
  labs(
    title = "Porcentaje de views promedio en youtube ",
    subtitle = "Primeros 10 artistas",
    caption = "fuente: kaggle",
    x = "Artista",
    y = "Porcentaje") +
  geom_text(aes(x = Artist, label = porcent_Y),
            hjust = 1)

x <- c('Product A', 'Product B', 'Product C')
y <- c(20, 14, 23)
y2 <- c(16,12,27)
text <- c('27% market share', '24% market share', '19% market share')
data <- data.frame(x, y, y2, text)

fig <- data %>% plot_ly()
fig <- fig %>% add_trace(x = ~x, y = ~y, type = 'bar',
             text = y, textposition = 'auto',
             marker = list(color = 'rgb(158,202,225)',
                           line = list(color = 'rgb(8,48,107)', width = 1.5)))
fig <- fig %>% add_trace(x = ~x, y = ~y2, type = 'bar',
            text = y2, textposition = 'auto',
            marker = list(color = 'rgb(58,200,225)',
                          line = list(color = 'rgb(8,48,107)', width = 1.5)))
fig <- fig %>% layout(title = "January 2013 Sales Report",
         barmode = 'group',
         xaxis = list(title = ""),
         yaxis = list(title = ""))

fig
LS0tDQp0aXRsZTogImNsYXNlIDcgLSAzIGRlIGFicmlsIg0Kc3VidGl0bGU6ICJNaSBwcmltZXIgaW5mb3JtZSBjb24gUm1hcmtkb3duIg0KYXV0aG9yOiAiQW5kcmVhIEdvbWV6Ig0KZGF0ZTogImByIFN5cy5EYXRlKClgIg0Kb3V0cHV0OiANCiAgaHRtbF9kb2N1bWVudDoNCiAgICBjb2RlX2Rvd25sb2FkOiB5ZXMNCiAgICB0b2M6IHllcw0KICAgIHRvY19mbG9hdDogeWVzDQogICAgdGhlbWU6IHVuaXRlDQogIHBkZl9kb2N1bWVudDoNCiAgICB0b2M6IHllcw0KICNybWRmb3JtYXRzOjpkb3duY3V0ZQ0KLS0tDQoNCiMgR2VuZXJhbmRvIGluZm9ybWVzDQoNCjo6OiB7c3R5bGU9ImRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMmZyIDFmcjsgZ3JpZC1jb2x1bW4tZ2FwOiAzMHB4OyJ9DQo8ZGl2Pg0KDQoqKlBhc29zIHBhcmEgbGEgcHJlLWVudHJlZ2EgeSBFbnRyZWdhIGRlIHByb3llY3RvIGZpbmFsLioqDQoNCipSIE1hcmtkb3duIGRvY3VtZW50cyBhcmUgZnVsbHkgcmVwcm9kdWNpYmxlLiBVc2UgYSBwcm9kdWN0aXZlIG5vdGVib29rIGludGVyZmFjZSB0byB3ZWF2ZSB0b2dldGhlciBuYXJyYXRpdmUgdGV4dCBhbmQgY29kZSB0byBwcm9kdWNlIGVsZWdhbnRseSBmb3JtYXR0ZWQgb3V0cHV0LiBVc2UgbXVsdGlwbGUgbGFuZ3VhZ2VzIGluY2x1ZGluZyBSLCBQeXRob24sIGFuZCBTUUwuKg0KDQpNw6FzIGluZm9ybWFjacOzbiBzb2JyZSBhcm1hZG8gZGUgY29sdW1uYXMgZW4gW3JtYXJrZG93bi1jb29rYm9va10oaHR0cHM6Ly9ib29rZG93bi5vcmcveWlodWkvcm1hcmtkb3duLWNvb2tib29rL211bHRpLWNvbHVtbi5odG1sKQ0KDQo8L2Rpdj4NCg0KPGRpdj4NCg0KPGltZyBzcmM9InJtYXJrZG93bi5wbmciIHRpdGxlPSJhIHRpdGxlIiBhbHQ9ImltZ2VuIGhleCBkZSBSbWFya2Rvd24iIHdpZHRoPSI1MCUiLz4NCg0KPC9kaXY+DQo6OjoNCg0KIyMgKlBhc29zIHByZXZpb3MqDQoNCi0gICBQcmVwYXJvIGxpYnJlcmlhcyBjb24gbGFzIHF1ZSB2b3kgYSB0cmFiYWphcg0KDQpgYGB7ciBsaWJyZXJpYSwgd2FybmluZz1GQUxTRSwgaW5jbHVkZT1GQUxTRX0NCmxpYnJhcnkodGlkeXZlcnNlKQ0KDQojZ3LDoWZpY29zDQpsaWJyYXJ5KHBsb3RseSkNCg0KI3RhYmxhcw0KbGlicmFyeShEVCkNCmxpYnJhcnkoZ3QpDQpgYGANCg0KLSAgIFJldmlzaW9uIGRlbCBkYXRhc2V0DQotICAgRGVzY2FyZ2FyIGJhc2UgZW4gWyoqS2FnZ2xlKipdKGh0dHBzOi8vd3d3LmthZ2dsZS5jb20vZGF0YXNldHMvc2FsdmF0b3JlcmFzdGVsbGkvc3BvdGlmeS1hbmQteW91dHViZSkNCg0KYGBge3IgYmFzZSwgaW5jbHVkZT1GQUxTRX0NClNwb3RpZnlfeW91dHViZSA8LSByZWFkLmNzdigiU3BvdGlmeV9Zb3V0dWJlLmNzdiIpDQpzdHIoU3BvdGlmeV95b3V0dWJlKSAjY29uc3VsdGEgYmFzZQ0KYGBgDQoNCi0gICA8c3Ryb25nIHN0eWxlPSJjb2xvcjojMGQzYjY2O2ZvbnQtc2l6ZToxNHB4O2ZvbnQtZmFtaWx5Ok1vbnRzZXJyYXQsIEFyaWFsOyI+UGFyYSBjcmVhciB1biBudWV2byBjaHVuayBkZSBlamVjdWNpw7NuIGRlIGPDs2RpZ28gdXRpbGl6byAkQ1RSTCArIEFMVCArIEkkPC9zdHJvbmc+DQoNCi0gICAkXHRleHR7cG9yY2VudGFqZSBZb3V0dWJlfSA9IFxmcmFje1x0ZXh0eyhQcm9tZWRpbyBZb3V0dWJlKX19e1x0ZXh0eyhQcm9tZWRpbyBUb3RhbCl9fSoxMDAkDQoNCi0gICAkXHRleHR7cG9yY2VudGFqZSBTcG90aWZ5fSA9IFxmcmFje1x0ZXh0eyhQcm9tZWRpbyBTcG90aWZ5KX19e1x0ZXh0eyhQcm9tZWRpbyBUb3RhbCl9fSoxMDAkDQoNCmBgYHtyfQ0KU3BvdGlmeV95b3V0dWJlX3JlZHVjaWRvIDwtIFNwb3RpZnlfeW91dHViZSAlPiUgDQogIHNlbGVjdChBcnRpc3QsIFRyYWNrLCBBbGJ1bV90eXBlLCBTdHJlYW0sIENoYW5uZWwsIFZpZXdzKSAlPiUgDQogIGdyb3VwX2J5KEFydGlzdCkgJT4lDQogIHN1bW1hcmlzZSgNCiAgICBwcm9tZWRpb195b3V0dWJlID0gbWVhbihWaWV3cyksDQogICAgcHJvbWVkaW9fc3BvdGlmeSA9IG1lYW4oU3RyZWFtKSwNCiAgICBwcm9tZWRpb190b3RhbCA9IG1lYW4oVmlld3MrU3RyZWFtKSwNCiAgICBwb3JjZW50X1kgPSByb3VuZChwcm9tZWRpb195b3V0dWJlL3Byb21lZGlvX3RvdGFsKjEwMCwyKSwNCiAgICBwb3JjZW50X1MgPSByb3VuZChwcm9tZWRpb19zcG90aWZ5L3Byb21lZGlvX3RvdGFsKjEwMCwyKSkgJT4lDQogIGFycmFuZ2UoZGVzYyhwcm9tZWRpb190b3RhbCkpICU+JSANCiAgaGVhZCgxMCkNCg0KU3BvdGlmeV95b3V0dWJlX3JlZHVjaWRvJHByb21lZGlvX3lvdXR1YmUgPC0gZm9ybWF0KFNwb3RpZnlfeW91dHViZV9yZWR1Y2lkbyRwcm9tZWRpb195b3V0dWJlLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiaWcubWFyaz0gIi4iLCBqdXN0aWZ5PSAicmlnaHQiKQ0KDQpgYGANCg0KDQojIyMgVGFibGEgc2ltcGxlIA0KVW4gZWplbXBsbyBkZSB0YWJsYSBzaW1wbGUgY29uIGxhcyBmZWNoYXMgZGUgZW50cmVnYSBkZSBwcm95ZWN0byBmaW5hbA0KDQoNCnwgRW50cmVnYXMgfCBGZWNoYSBpbmljaW8gfCBGZWNoYSBMw61taXRlIHwNCnw6LS0tLS0tfDotLS0tLTp8LS0tLS0tLTp8DQp8ICoqUHJlLWVudHJlZ2EqKnwgMDMgZGUgYWJyaWwgICAgfCAxMCBkZSBhYnJpbCAgfA0KfCAqKkVudHJlZ2EqKiAgICAgfCAxOSBkZSBhYnJpbCAgICB8IDkgZGUgbWF5byAgICB8DQoNCg0KDQpgYGB7ciBlY2hvPUZBTFNFfQ0KZ3QoU3BvdGlmeV95b3V0dWJlX3JlZHVjaWRvKSAlPiUgDQogIHRhYl9oZWFkZXIoDQogICAgdGl0bGUgPSAiQXJ0aXN0YXMgbcOhcyBlc2N1Y2hhZG9zIGVuIFNwb3RpZnkgeSBZb3V0dWJlIikgJT4lICNhZ3JlZ28gdGl0dWxvDQogICB0YWJfc291cmNlX25vdGUoDQogICAgc291cmNlX25vdGUgPSBtZCgiRnVlbnRlOiBrYWdnbGUuY29tIikgKSAjIGFncmVnbyBmdWVudGUgbyBwaWUgZGUgcMOhZ2luYQ0KDQoNCmBgYA0KDQoNCmBgYHtyfQ0KZGF0YXRhYmxlKFNwb3RpZnlfeW91dHViZV9yZWR1Y2lkbykNCmBgYA0KDQoNCiMjIFZpc3VhbGl6YWNpw7NuIGRlIGRhdG9zDQoNCiMjIyBHcsOhZmljb3MgY29uIGdncGxvdDINCg0KYGBge3IgZWNobz1GQUxTRX0NCmtuaXRyOjppbmNsdWRlX2dyYXBoaWNzKCJnZ3Bsb3QyLnBuZyIpDQpgYGANCg0KYGBge3J9DQpnZ3Bsb3QoU3BvdGlmeV95b3V0dWJlX3JlZHVjaWRvLCBhZXMoeCA9IEFydGlzdCwgeSA9IHJlb3JkZXIocG9yY2VudF9ZLCBkZXNjKEFydGlzdCkpKSkgKw0KICBnZW9tX2NvbChmaWxsID0gInBpbmsiLCBhbHBoYSA9IDEpICsNCiAgdGhlbWVfYncoKSArIA0KICBjb29yZF9mbGlwKCkgKyANCiAgbGFicygNCiAgICB0aXRsZSA9ICJQb3JjZW50YWplIGRlIHZpZXdzIHByb21lZGlvIGVuIHlvdXR1YmUgIiwNCiAgICBzdWJ0aXRsZSA9ICJQcmltZXJvcyAxMCBhcnRpc3RhcyIsDQogICAgY2FwdGlvbiA9ICJmdWVudGU6IGthZ2dsZSIsDQogICAgeCA9ICJBcnRpc3RhIiwNCiAgICB5ID0gIlBvcmNlbnRhamUiKSArDQogIGdlb21fdGV4dChhZXMoeCA9IEFydGlzdCwgbGFiZWwgPSBwb3JjZW50X1kpLA0KICAgICAgICAgICAgaGp1c3QgPSAxKQ0KYGBgDQoNCmBgYHtyIGVjaG89RkFMU0V9DQoNClNwb3RpZnlfWW91dHViZV9yZWR1Y2lkbzIgPC0gU3BvdGlmeV95b3V0dWJlX3JlZHVjaWRvICU+JSANCiAgcmVuYW1lKCJZb3V0dWJlIiA9ICJwb3JjZW50X1kiLCAiU3BvdGlmeSIgPSAicG9yY2VudF9TIikgJT4lIA0KICBwaXZvdF9sb25nZXIoY29scyA9IGMoNSw2KSwNCiAgICAgICAgICAgICAgIG5hbWVzX3RvID0gIlBsYXRhZm9ybWEiLA0KICAgICAgICAgICAgICAgdmFsdWVzX3RvID0gIlBvcmNlbnRhamUiKQ0KDQpnZ3Bsb3RseShnZ3Bsb3QoU3BvdGlmeV9Zb3V0dWJlX3JlZHVjaWRvMiwgDQogICAgICAgYWVzKHggPSBBcnRpc3QsIHkgPVBvcmNlbnRhamUsIGZpbGwgPSBQbGF0YWZvcm1hKSkgKw0KICBnZW9tX2NvbChhbHBoYSA9IDAuNSkrDQogIGNvb3JkX2ZsaXAoKSArDQogIHRoZW1lX2J3KCkpDQoNCmBgYA0KDQoNCg0KYGBge3J9DQp4IDwtIGMoJ1Byb2R1Y3QgQScsICdQcm9kdWN0IEInLCAnUHJvZHVjdCBDJykNCnkgPC0gYygyMCwgMTQsIDIzKQ0KeTIgPC0gYygxNiwxMiwyNykNCnRleHQgPC0gYygnMjclIG1hcmtldCBzaGFyZScsICcyNCUgbWFya2V0IHNoYXJlJywgJzE5JSBtYXJrZXQgc2hhcmUnKQ0KZGF0YSA8LSBkYXRhLmZyYW1lKHgsIHksIHkyLCB0ZXh0KQ0KDQpmaWcgPC0gZGF0YSAlPiUgcGxvdF9seSgpDQpmaWcgPC0gZmlnICU+JSBhZGRfdHJhY2UoeCA9IH54LCB5ID0gfnksIHR5cGUgPSAnYmFyJywNCiAgICAgICAgICAgICB0ZXh0ID0geSwgdGV4dHBvc2l0aW9uID0gJ2F1dG8nLA0KICAgICAgICAgICAgIG1hcmtlciA9IGxpc3QoY29sb3IgPSAncmdiKDE1OCwyMDIsMjI1KScsDQogICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lID0gbGlzdChjb2xvciA9ICdyZ2IoOCw0OCwxMDcpJywgd2lkdGggPSAxLjUpKSkNCmZpZyA8LSBmaWcgJT4lIGFkZF90cmFjZSh4ID0gfngsIHkgPSB+eTIsIHR5cGUgPSAnYmFyJywNCiAgICAgICAgICAgIHRleHQgPSB5MiwgdGV4dHBvc2l0aW9uID0gJ2F1dG8nLA0KICAgICAgICAgICAgbWFya2VyID0gbGlzdChjb2xvciA9ICdyZ2IoNTgsMjAwLDIyNSknLA0KICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lID0gbGlzdChjb2xvciA9ICdyZ2IoOCw0OCwxMDcpJywgd2lkdGggPSAxLjUpKSkNCmZpZyA8LSBmaWcgJT4lIGxheW91dCh0aXRsZSA9ICJKYW51YXJ5IDIwMTMgU2FsZXMgUmVwb3J0IiwNCiAgICAgICAgIGJhcm1vZGUgPSAnZ3JvdXAnLA0KICAgICAgICAgeGF4aXMgPSBsaXN0KHRpdGxlID0gIiIpLA0KICAgICAgICAgeWF4aXMgPSBsaXN0KHRpdGxlID0gIiIpKQ0KDQpmaWcNCmBgYA0KDQo=