class: inverse, center, middle <br> #### Programación y manejo de datos con R (slides 01) ## Introducción (Tema 1) <br> ### Pedro J. Pérez #### 2021, mayo ###### (actualizadas el 04-09-2023) <br><br> #### e-mail: [pedro.j.perez@uv.es](mailto:pedro.j.perez@uv.es) #### Web del curso: [https://perezp44.github.io/intro-ds-23-24-web](https://perezp44.github.io/intro-ds-23-24-web) --- class: inverse, center, middle ### 1. Para analizar datos, ¿realmente necesito aprender R? <html><div style='float:left'></div><hr color='#EB811B' size=1px width=996px></html> <br> -- #### Bueno ... estamos en la era del Big Data y para hacer "Ciencia de Datos" es necesario programar. #### Además, R es, junto con Phyton, el principal lenguaje para hacer DS. --- ##### Era del Big Data - Estamos inmersos en una época de cambio tecnológico acelerado, conocida como la **era del Big Data**. - Una parte importante de esos avances están relacionados con la **abundancia de datos**. - Los datos masivos han posibilitado grandes avances en un campo de investigación como es el **Machine Learning/Deep Learning** -- ##### Datos másivos (Big data) - "The world’s **most valuable resource** is no longer oil, but **data**" (The Economist, 2017). - Necesidad de convertir datos en información que aporte valor a las corporaciones. - Pero ... no siempre es fácil, por ejemplo: las tres **v**’s del Big Data: **v**olumen, **v**elocidad y **v**ariedad. - Ha llevado a la aparición de un nuevo campo de conocimiento que está irrumpiendo con fuerza en muchos planes de estudio: la **Ciencia de Datos** - Los datos masivos también han hecho surgir una serie de retos: privacidad, **sesgos en los algoritmos**. --- ##### IA, ML y DL - Los datos masivos han posibilitado grandes avances en un campo de investigación como es el **Machine Learning/Deep Learning**. - La idea fundamental en que se basa la **Inteligencia Artificial** es conseguir que una computadora resuelva un problema complejo como lo haría un humano - 3 etapas: inicios, sistemas expertos y ML/DL -- - En ML/DL no hay que codificar las reglas, sino que se provee a un algoritmo con suficientes datos y este **encuentra las reglas por si mismo**; es decir, en cierto sentido "aprende". - Este enfoque ha posibilitado que muchas tareas "humanas" se hayan **automatizado**. - Un sistema/programa de ML es entrenado más que explicitamente programado. -- - **Deep Learning** es un subconjunto del ML. Utiliza técnicas/algoritmos más complejas en términos computacionales y, por lo tanto, necesitan para aprender un mayor volumen de datos, pero su filosofía es la misma: proveer datos para que el ordenador aprenda a resolver y automatizar una tarea concreta. --- ##### ¿Qué es la Ciencia de Datos? - Disciplina cuyo objetivo es **obtener información/conocimiento** de los datos que genere valor. - Más simple: "usar datos para contestar preguntas" (!!) - Pero ... ¿ese no es también el objetivo de la estadística? -- ##### Estadística versus Data Science (DS). ¿Es lo mismo? - Bueno ..., sí y no. <img src="data:image/png;base64,#../imagenes/ss_02_img_01_stats-vs-DS_02.png" width="45%" style="display: block; margin: auto;" /> --- ##### para nosotros la DS será ... - Todo el proceso, todo lo que ocurre, desde que se importan unos datos hasta que se presentan los resultados. <img src="data:image/png;base64,#../imagenes/ss_02_img_02_DSa.png" width="85%" style="display: block; margin: auto;" /> --- ##### DS es un buen trabajo? - "The **data scientist** is the **sexiest job** of the century" : [Harvard Business Review (2012)](https://hbr.org/2012/10/data-scientist-the-sexiest-job-of-the-21st-century). - Según [este artículo de HBR](https://hbr.org/2022/07/is-data-scientist-still-the-sexiest-job-of-the-21st-century), parece que **en 2022** todavía sigue siendo un empleo muy demandado. <br> ##### para ser "científico de datos", ¿qué necesito saber? - Para un data scientist son muy importantes las hackings skills (programación) <img src="data:image/png;base64,#../imagenes/ss_02_img_03_DS-venn.png" width="33%" style="display: block; margin: auto;" /> --- ##### ¿Que sotfware usar? ¿Point & click programs o lenguajes de programación? -- .pull-left[ - **Con menús**: facilidad de uso; sin embargo, ... <img src="data:image/png;base64,#../imagenes/error_Excel_01.png" width="90%" style="display: block; margin: auto;" /> <br> - By the way, <svg viewBox="0 0 581 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"></path></svg> [tiene muchas GUI's](https://r4stats.com/2022/02/09/r-graphical-user-interface-comparison/): programas con menús similares a SPSS. ] -- .pull-right[ - **Con código**: <svg viewBox="0 0 581 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"></path></svg>eproducibilidad y flexibilidad, y ..., pero ... <img src="data:image/png;base64,#../imagenes/ss_00_teseract.png" width="65%" style="display: block; margin: auto;" /> <img src="data:image/png;base64,#../imagenes/ss_00_medellin.png" width="65%" style="display: block; margin: auto;" /> ] --- .pull-left[ ##### Una pequeña broma. Broma pero ... <br> <img src="data:image/png;base64,#../imagenes/ss_02_img_06_R-como-cars.jpeg" width="100%" style="display: block; margin: auto;" /> ] -- .pull-right[ ##### Programar cuesta (al principio), pero permite hacer muchas cosas nuevas - Por ejemplo, [estos trabajos](https://perezp44.github.io/intro-ds-21-22-web/07-trabajos.html) se elaboraron como trabajos de una asignatura optativa del grado de Economía. - Tenéis que visitar estas 2 páginas: - [R weekly](https://rweekly.org/) - [R-bloggers](https://www.r-bloggers.com/) - Más recursos: - [CRAN package by task](https://cran.r-project.org/web/views/) y [II](https://github.com/cran-task-views/ctv) - ["Top-40" new CRAN R packages](https://rviews.rstudio.com/2021/03/19/february-2021-top-40-new-cran-packages/) - [Awesome list of R resources](https://github.com/iamericfletcher/awesome-r-learning-resources) - [Otra Awesome R list](https://github.com/qinwf/awesome-R) - [Big Book of R](https://www.bigbookofr.com/) ] --- .pull-left[ ##### OK, medio convencido, pero ... ¿de verdad que tengo que aprender a programar? - **SÍ**. Todo lo que puedas. - Una de las competencias importantes en DS es saber programar, pero … **requiere tiempo**; y .orange2[al principio] te sientes **inútil** <br> <img src="data:image/png;base64,#../imagenes/ss_02_img_05_salt.png" width="95%" style="display: block; margin: auto;" /> <br> - Salvo que te fíes de OpenAI y [GPT-3](https://beta.openai.com/playground) ] -- .pull-right[ ##### OK, medio convencido. Aunque ... <div class="figure" style="text-align: center"> <img src="data:image/png;base64,#../imagenes/ss_00_R--excel.png" alt="From https://twitter.com/kareem_carr/status/1371836385133531155" width="100%" /> <p class="caption">From https://twitter.com/kareem_carr/status/1371836385133531155</p> </div> ] --- class:: inverse2, center ### A veces me pregunto ¿tendríamos que introducir R en nuestras clases? ##### Yo no lo tengo claro del todo. 🤔 -- .pull-left[ <blockquote class="twitter-tweet"><p lang="en" dir="ltr">Too many young students are having their time and money wasted by being forced to use out of date tools like SPSS because their professors are scared of the new stuff. There. I said it. <a href="https://twitter.com/hashtag/rstats?src=hash&ref_src=twsrc%5Etfw">#rstats</a> <a href="https://twitter.com/hashtag/python?src=hash&ref_src=twsrc%5Etfw">#python</a> <a href="https://twitter.com/hashtag/datascience?src=hash&ref_src=twsrc%5Etfw">#datascience</a>.</p>— Keith McNulty (@dr_keithmcnulty) <a href="https://twitter.com/dr_keithmcnulty/status/1382870396408627202?ref_src=twsrc%5Etfw">April 16, 2021</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> ] .pull-right[ <blockquote class="twitter-tweet"><p lang="en" dir="ltr">Folks, how do you efficiently deliver to students that R is a skill that potential employers may prefer over Stata or SPSA?<br><br>My ideas was to show that there is a “Google R Style Guide” but not for the other two. <br><br>Help out a poor undergrad methods instructor 🥲</p>— Seo-young Silvia Kim (@sysilviakim) <a href="https://twitter.com/sysilviakim/status/1485409680255901700?ref_src=twsrc%5Etfw">January 24, 2022</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> ] --- ##### Investigación reproducible y software libre - Para que un análisis con datos sea **reproducible**, no sólo es necesario que los datos utilizados han de ser accesibles, sino que cómo mínimo debería: - proporcionar los datos originales (obviamente documentar las fuentes) - efectuar todo el proceso a través de código (scripts) - documentar el proceso de trabajo (por ejemplo el orden en que se ejecutaron los scripts) -- <br> - Además debería utilizar **software libre** - En el curso usaremos **R** --- class: inverse, center, middle ### 2. OK, convencido, pero ... ¿por qué R? <html><div style='float:left'></div><hr color='#EB811B' size=1px width=796px></html> <br> #### Sacrílego!!!! 🧙🧙 🔥🔥 #### [Por muchas cosas!!!](https://mobile.twitter.com/tanya_shapiro/status/1516212841761681415) Lo mejor de <svg viewBox="0 0 581 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"></path></svg> [su comunidad](https://twitter.com/WillBall12/status/1495068050118389768)!! --- ##### ¿por qué R? - **R is the data language**: en Ciencia de datos it’s THE language to beat. - Sólo tiene un rival serio: **Phyton**. Si no me crees puedes leer sobre ello [aquí](http://nadaesgratis.es/fernandez-villaverde/r), [aquí](https://www.r-bloggers.com/why-r-is-the-best-data-science-language-to-learn-today/), o [aquí](https://shirinsplayground.netlify.com/2017/09/ode_to_r/) - Entre las **compañías que usan R** están: Google, Facebook, Twitter, Microsoft, IBM, Uber, Ford, Airbnb, American Express, Barclays Bank, Bank of America ... Puedes encontrar un listado más completo [aquí](https://www.listendata.com/2016/12/companies-using-r.html) - Evidentemente, no a todo el mundo le gusta R; por ejemplo [aquí](http://arrgh.tim-smith.us/) o el clásico [R-inferno](http://www.burns-stat.com/documents/books/the-r-inferno/) -- <br> ##### Pero ... ¿y Phyton? - Hay muchas opiniones sobre el debate **R vs Phyton**, por ejemplo: [esta](http://mchow.com/posts/data-science-cbk/), [esta](https://twitter.com/bhanukjhingan/status/1395410754929520644), [esta](https://www.youtube.com/watch?v=wWABGUGv-Bg&feature=youtu.be) o [esta](https://www.youtube.com/watch?v=JAEs5IAhAYY). - Phyton es un lenguaje de programación más general, **R is more domain specific**. Puedes consultar algunas **clasificaciones** [aquí](https://blog.revolutionanalytics.com/2018/06/pypl-programming-language-trends.html) --- .pull-left[ ##### by the way ... parece que seguimos creciendo!! <img src="data:image/png;base64,#../imagenes/ss_00_descargas_R.png" width="72%" style="display: block; margin: auto;" /> ] -- .pull-right[ ##### además, yo me fio de Elmo!!! <img src="data:image/png;base64,#../imagenes/ss_00_Elmo.png" width="75%" style="display: block; margin: auto;" /> ] --- class: inverse, center, middle ### 3.Primeras ideas , ¿qué es esto de R? <html><div style='float:left'></div><hr color='#EB811B' size=1px width=796px></html> <br> #### Conviene saber algunas cosas sobre el universo <svg viewBox="0 0 581 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"></path></svg> #### (R, RStudio, paquetes, tidyverse, Rmarkdown, Rprojects ... Quarto) --- background-image: url(imagenes/ss_00_RR_icono.jpeg) background-position: 99% 1% background-size: 6% ##### ¿qué es R? - Es un **entorno** para hacer **análisis estadísticos**; de hecho, la página oficial de R se llama [The R Project for Statistical Computing](https://www.r-project.org/) - También es un **lenguaje de programación** - R se distribuye bajo la licencia GNU GPL; o sea, es **software libre** <br> ##### ¿cuando fue creado? - En 1993, por **R. Ihaka** y **R. Gentleman** de la Universidad de Auckland - En 1997 el desarrollo de R se traspasó a un grupo de programadores conocidos como **"The R-core team"** ... - ... pero actualmente, el entorno R es el resultado de la colaboración de la **comunidad de usuarios de R** --- background-image: url(imagenes/ss_00_RStudio.png) background-position: 99% 1% background-size: 6% ##### ¿qué es RStudio? - Técnicamente es un **IDE** (Integrated development environment) diseñado especialmente para R - Intuitivamente es un **programa que nos facilita dar nuestras ordenes a R**. - RStudio fue [creado en 2011](https://www.rstudio.com/blog/rstudio-new-open-source-ide-for-r/) -- ##### Diferencias entre R y RStudio - Es importante entender la diferencia entre R y RStudio: R es un entorno/programa para hacer análisis estadísticos y también es un lenguaje de programación; mientras que RStudio es un programa que sirve para poder usar R de manera más cómoda y eficiente. --- class: inverse, center, middle ### 4. Historia reciente de R <html><div style='float:left'></div><hr color='#EB811B' size=1px width=796px></html> <br> ### R-base vs. tidyverse --- ##### a kind of revolution in <svg viewBox="0 0 581 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"></path></svg>: Hadley y el tidyverse - R **era** un lenguaje "oscuro" para estadísticos y académicos, pero ... - ... recientemente ha habido una especie de **revolución** en el universo <svg viewBox="0 0 581 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"></path></svg> -- .pull-left[ - [Hadley Wickham](http://hadley.nz/), científico jefe de RStudio, [revolucionó el universo](https://priceonomics.com/hadley-wickham-the-man-who-revolutionized-r/?utm_campaign=Data%2BElixir&utm_medium=email&utm_source=Data_Elixir_46) <svg viewBox="0 0 581 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"></path></svg>, creando el '*Hadleyverse*' <img src="data:image/png;base64,#../imagenes/ss_02_img_07_Hadley.jpg" width="76%" style="display: block; margin: auto;" /> ] -- .pull-right[ - El '*Hadleyverse*', se ha convertido en el [tidyverse](https://www.tidyverse.org/) gracias a un grupo de desarrolladores, por ejemplo: <img src="data:image/png;base64,#../imagenes/ss_02_img_08_gente-tidyverse.jpg" width="95%" style="display: block; margin: auto;" /> ] --- background-image: url(imagenes/ss_05_img_03_tidyverse-hex.png) background-position: 99% 1% background-size: 6% ##### ¿qué es el tidyverse? - Una nueva forma de escribir código y afrontar el análisis de datos con R. - Según su propia página web, el [tidyverse](https://www.tidyverse.org/) es: <img src="data:image/png;base64,#../imagenes/ss_05_img_05_pkgs-tidyverse.png" width="65%" style="display: block; margin: auto;" /> - **Traducido**, es un grupo de paquetes que se han diseñado con los mismos principios y que, por tanto, trabajan bien juntos y que han cambiado mucho, y a mejor, la forma de programar y afrontar el análisis de datos con R. - Ahora mismo, el **tidyverse** [ya es el estándar](https://twitter.com/R_Hisp/status/1399635575712399360) --- background-image: url(imagenes/ss_05_img_03_tidyverse-hex.png) background-position: 99% 1% background-size: 6% ##### R-base vs. tidyverse - Podemos pensar que hay 2 formas de escribir código en <svg viewBox="0 0 581 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"></path></svg>: R-base y tidyverse. - Nosotros escribiremos, principalmente, **à la tidyverse**. - Escribir *à la tidyverse* [tiene ventajas](https://twitter.com/andrewheiss/status/1359583543509348356?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1359583543509348356%7Ctwgr%5E%7Ctwcon%5Es1_&ref_url=file%3A%2F%2F%2Fhome%2Fpjpv%2FEscritorio%2Fslides_curso-R_2021_ok%2Fslides_01_intro_a.html1) y, además, es que [ya es el estándar](https://twitter.com/R_Hisp/status/1399635575712399360) <br> -- ##### tiene ventajas, p. ej ... la claridad y facilidad a la hora de leer el código. -- - **R-base way**: ```r leave_house(get_dressed(get_out_of_bed(wake_up(me, time = "8:00"), side = "correct"), pants = TRUE, shirt = TRUE), car = TRUE, bike = FALSE) ``` -- - **à la tidyverse** (el operador %>% se llama "the pipe"): ```r me %>% wake_up(time = "8:00") %>% get_out_of_bed(side = "correct") %>% get_dressed(pants = TRUE, shirt = TRUE) %>% leave_house(car = TRUE, bike = FALSE) ``` --- class: inverse, center, middle ### 5. Investigación reproducible y Rmarkdown <html><div style='float:left'></div><hr color='#EB811B' size=1px width=796px></html> <br> #### En mi opinión R está(ba) varios pasos por delante en cuanto a investigación reproducible --- background-image: url(imagenes/ss_00_new_logo_rmd.png) background-position: 99% 1% background-size: 5% ##### Tidyverse workflow e investigación reproducible <img src="data:image/png;base64,#../imagenes/tt_06_img_01_explore-visualice.png" width="60%" style="display: block; margin: auto;" /> -- - Realizaremos **todas las etapas con R**, sin cambiar de programa; y además, como queremos que nuestros análisis sean **reproducibles** usaremos ... <br> -- ##### usaremos ... - [Rprojects](https://support.rstudio.com/hc/en-us/articles/200526207-Using-Projects) - [Rmarkdown](https://rmarkdown.rstudio.com/) o [Quarto](https://quarto.org/) para hacer informes o documentos reproducibles. --- background-image: url(imagenes/ss_00_new_logo_rmd.png) background-position: 99% 1% background-size: 5% ##### ¿qué es Rmarkdown? - Podemos pensar que es **una forma de escribir** nuestros informes/análisis directamente desde R. No nos hará falta salir de R; todo se hace en R, desde los cálculos estadísticos, los gráficos, el texto o narrativa y la maquetación. -- ##### Ventaja principal - Nuestros informes serán **reproducibles**. Puede ver [este video](https://www.youtube.com/watch?v=s3JldKoA0zw) o leer [este post](https://rfortherestofus.com/2019/03/r-killer-feature-rmarkdown/) -- - Puedes ver ejemplos en [this gallery](https://rmarkdown.rstudio.com/gallery.html). -- ##### pero ... ¿y Quarto? 🤔🤔 --- class:: inverse2 <br><br><br> ### Antes de abrir RStudio: sé que todos somos mayores y que casí sois Graduados pero aún así ... un par de consejos <br> <html><div style='float:left'></div><hr color='#EB811B' size=1px width=996px></html> <br><br> ##### En serio!! Completamente en serio!! --- class: center ### 1. Es muy-muy importante la actitud!!! -- .pull-left[ ##### Hay que intentar no agobiarse ... <img src="data:image/png;base64,#../imagenes/ss_03_img_01_angry-computer.jpg" width="95%" style="display: block; margin: auto;" /> <br> .small[**Errores tontos**, we will have [a few](https://twitter.com/cogscimom/status/1354508785365078016/photo/1), well ... [a lot](https://twitter.com/WeAreRLadies/status/1523777331386458178). Es un poco frustante, pero [completamente normal](https://twitter.com/allison_horst/status/1213275783675822080?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1213275783675822080%7Ctwgr%5E%7Ctwcon%5Es1_&ref_url=https%3A%2F%2Fperezp44.github.io%2Fintro-ds-21-22-web%2Ftutoriales%2Ftt_02_primeros-pasos-con-R.html) !!!!!!] ] -- .pull-right[ #### ... mejor dejarse llevar <img src="data:image/png;base64,#../imagenes/ss_03_img_02_baby-surf.jpg" width="95%" style="display: block; margin: auto;" /> ] --- class: center ##### 2. Igual, sólo igual, nos hace falta otra forma de aprender (WTF!!!) -- - Creo que [este video](https://www.youtube.com/watch?v=_5LhYsKpOOA) os puede ayudar. -- - [Aquí](https://jakevdp.github.io/PythonDataScienceHandbook/01.01-help-and-documentation.html) señalan que: Being an effective practitioner of DS is **less about memorizing** the tool or command you should use for every possible situation, and **more about learning to effectively find the information you don't know**, whether through a web search engine or another means. - Es decir, hay que saber **buscar ayuda**, por ejemplo, [aquí](https://r4ds.hadley.nz/workflow-getting-help.html), [aquí](https://support.rstudio.com/hc/en-us/articles/200552336-Getting-Help-with-R) o [aquí](https://www.r-project.org/help.html), lo explican bien. Un [ejemplo](https://twitter.com/MaxPrimbs/status/1514544495349612546) -- .pull-left[ <img src="data:image/png;base64,#../imagenes/ss_01_escolta_matplotlib.png" width="98%" style="display: block; margin: auto auto auto 0;" /> ] -- .pull-right[ <img src="data:image/png;base64,#../imagenes/ss_01_jessy_montipak.png" width="81%" style="display: block; margin: auto auto auto 0;" /> <img src="data:image/png;base64,#../imagenes/ss_01_googling_2.png" width="79%" style="display: block; margin: auto auto auto 0;" /> ] --- background-image: url(data:image/png;base64,#../imagenes/ss_03_img_02_baby-surf.jpg) background-size: cover ### Vengaaaa, vamos allá!!!! -- <img src="data:image/png;base64,#../imagenes/ss_00_tu_puedes.png" width="20%" style="display: block; margin: auto auto auto 0;" />