class: title-slide, middle, right background-image: url(https://images.unsplash.com/photo-1538766017398-415434a31a5b?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80) background-size: cover ### Intro a R # ### **Miriam Lerma**<br> Febrero 2021 --- class: title-slide ## 1. Intro - Teoría (historia de R, que es RStudio y algunos conceptos básicos para orientarse en RStudio) - Practica Van a abrir R, ubicar las partes y correr algunas variables. -- ### Quienes son ustedes? - Principiantes en R (de otra manera esto es un repaso). - Saben que existe R pero no lo conocen bien. - Aun así, necesitan usarlo en un futuro cercano. ### Hoy quiero que.... - Sepan que es R y RStudio. - Identifiquen las partes. Se sientan comodos en RStudio. --- class: title-slide, inverse # Créditos -El material esta basado en el libro: [
R4DS, editado por Riva Quiroga](https://r4ds-en-espaniol.netlify.app/) -Y el libro de: [
Bookdown, por Sonia Mendizabal](https://songeo.github.io/introduccion-r-bookdown/) -Y materiales de RLadies [
Zero to Hero](https://github.com/rladies/meetup-presentations_freiburg) [
Recursos en espanol ](https://github.com/rladies/recursos_en_espanol) [
RdesdeCero por Yanina Bellini](https://github.com/rladies/meetup-presentations_santarosa/blob/master/RdesdeCero) [
Primeros pasos en R por Riva Quiroga](https://github.com/rivaquiroga/RLadies-Santiago/blob/master/2018-04_taller_primeros_pasos_en_R.Rmd) Imágenes adicionales [
Portada de Unsplash por Jan Tinneberg](https://unsplash.com/@craft_ear) [
Unsplash](https://unsplash.com/) [
Allison horst](https://twitter.com/allison_horst?lang=es) --- class: title-slide, middle, right background-image: url(https://images.unsplash.com/photo-1538766017398-415434a31a5b?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80) background-size: cover # Empecemos! --- ## 1.1 Que es R? .center[ <img src="https://www.r-project.org/logo/Rlogo.svg" width="50" height="50" /> ] R es un lenguaje de programación con enfoque en análisis estadístico. Fue desarrollado por los neozelandeses Ross Ihaka y Robert Gentleman, en 1996. .center[ <img src="https://www.nature.com/news/polopoly_fs/7.22632.1418912921!/image/TB2.jpg_gen/derivatives/fullsize/TB2.jpg" height="300" /> Sylvia Tippmann/Source: Elsevier Scopus database ] --- ## 1.1 Que es R? ### Ventajas - Es gratis, en cambio otros programas como SPSS hay que pagarlos ... Lo mismo para ArCGIS. -- - Funcionalidad adicional gracias a los paquetes. -- - Visualización de datos es más flexible. -- En ciencia, es reproducible. - Siempre se guarda los pasos que hiciste, en los programas regularmente usados, se pican botones y hay que recordar la secuencia. R nos puede ahorrar tiempo y esfuerzo. -- - Esto además lo hace verificable. --- ## 1.2. Porque R? ### Desventajas - Tiene una curva de aprendizaje - Es como aprender un nuevo idioma <img src="https://pbs.twimg.com/media/EK8s79kUEAU3cAT?format=jpg&name=small" height="450" /> --- ## 1.3. Usar R ### R vs RStudio. **R** es un lenguaje de programación y **RStudio** es un ambiente desarrollado integrado (IDE en ingles). .pull-left[ R es el motor. <img src="https://images.unsplash.com/photo-1578586524259-489a03948798?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=751&q=80" height="200" /> ] .pull-right[ RStudio es el volante. <img src="https://images.unsplash.com/photo-1605445622210-2dd2586bccea?ixid=MXwxMjA3fDB8MHxzZWFyY2h8MXx8ZHJpdmluZyUyMHdoZWVsfGVufDB8fDB8&ixlib=rb-1.2.1&auto=format&fit=crop&w=500&q=60" height="200" /> ] --- ## 1.3. Ubicarse en RStudio ### Partes <img src="https://songeo.github.io/introduccion-r-bookdown/figures/console-descr.png" height="200" /> **Editor de código** es principalmente para armar nuestro script, correr secciones del mismo y modificarlo. **Workspace: Environment** aquí aparece la lista de objetos que creamos. **Consola** es donde vemos el procesamiento y/o resultados de nuestros análisis. **Visualizador/Salida** tiene varias opciones que vamos a ir viendo. --- ## 1.4 Usar R ### Ejercicios a la par Cuando abran RStudio les va a a parecer algo así <img src="https://r4ds-en-espaniol.netlify.app/diagrams_w_text_as_path/es/rstudio-console.svg" height="300" /> Para que les aparezca el editor de código: En la parte superior pueden buscar: File > New File > Rscript --- ## 1.4 Usar R ### Ejercicios a la par - Escriban en la consola (inferior izquierda) ```r 3*4 ``` - Escriban en el editor de código (superior izquierda) ```r 3*4 ``` -- Ahora denle ctrl + enter -- - Escriban ya sea en la consola o en el editor de código (no olviden darle enter) ```r ResultadoDeMiMultiplicacion<-3*4 ``` Que paso en su 'environment'? --- ## 1.4 Usar R ### Clases de datos Los datos pueden ser: - Numéricos ```r class(1.4) ``` ``` [1] "numeric" ``` - Caracteres ```r class("Miriam") ``` ``` [1] "character" ``` --- ## 1.4 Usar R ### Clases de datos Que pasa si escribo con comillas un numero? ```r class("1") ``` ``` [1] "character" ``` - Lógicos ```r 3 == 4 ``` ``` ## [1] FALSE ``` ```r 3 < 5 ``` ``` ## [1] TRUE ``` Hay muchas otras clases de datos que vamos a ver cuando sean relevantes. Factores cuando estemos haciendo análisis estadísticos por ejemplo. --- ## 1.4 Usar R ### Mi primer data frame Asignar nombres ```r <- ``` Este símbolo es super importante y lo vamos a usar mucho, lo ideal es que lo ubiquen en su teclado. - Discusiones sobre usar asignación o signo de igual: [Discución en stackoverflow](https://stackoverflow.com/questions/1741820/what-are-the-differences-between-and-assignment-operators-in-r), [R inferno](https://www.burns-stat.com/pages/Tutor/R_inferno.pdf), [Otros](https://www.roelpeters.be/the-difference-between-arrow-and-equals-assignment-in-r/) .center[ <img src="https://www.roelpeters.be/wp-content/uploads/2020/05/APL_KEYBOARD_ARROW_ASSIGNMENT-768x470.jpg" height="200" /> ] --- ## 1.4 Usar R Usar la asignacion. ```r Alumnos<-c("Alvaro","Gabriela","Carolina","Angel","Denisse","Juan","Lisset", "Majo","Irma","Pamela","Paulina") class(Alumnos) ``` ``` ## [1] "character" ``` ```r Alumnos<-as.data.frame(Alumnos) class(Alumnos) ``` ``` ## [1] "data.frame" ``` Vean su **environment** pueden darle doble clic y verlo en forma de tabla. --- ## 1.4 Usar R ### Mi primer data frame Asignar filas o revisar filas. ```r $ ``` Pero y si quiero agregar el apellido en otra columna? ```r Alumnos$Apellido<-c("G","A","T","D","L","S","H",NA,"M","L","R") ``` ```r (Alumnos) ``` ``` Alumnos Apellido 1 Alvaro G 2 Gabriela A 3 Carolina T 4 Angel D 5 Denisse L 6 Juan S 7 Lisset H 8 Majo <NA> 9 Irma M 10 Pamela L 11 Paulina R ``` --- ## 1.4 Usar R ### Forzar clases ```r MiNumero<-'1' ``` ```r class(MiNumero) ``` ``` ## [1] "character" ``` ```r MiNumero<-as.numeric(MiNumero) ``` ```r class(MiNumero) ``` ``` ## [1] "numeric" ``` --- ## 1.4 Usar R ### Forzar clases Otros que puedan necesitar ```r DiaHora<-'2015-06-12 05:00:00' ``` ```r class(DiaHora) ``` ``` ## [1] "character" ``` ```r DiaHora <- as.POSIXct(strptime(DiaHora, "%d/%m/%Y %H:%M:%S "), "GMT") ``` "POSIXct" "POSIXt" es como R identifica que son días y horas. ```r class(DiaHora) ``` ``` ## [1] "POSIXct" "POSIXt" ``` --- ## 1.4 Usar R ### Editor de código Para crear notas en el **editor de código** ponemos el **#** (numeral, hashtag, gatito) ```r #Acuerdate que no apuntaste el apellido de Majo y tienes NAs ``` R sabe que debe ignorar el comentario cuando tiene #, pero los comentarios nos sirven a nosotros. Es importante ponerle el numeral, si quieren pueden probar que pasa si se lo quitan. Una **buena practica** es escribir lo que queríamos hacer, ya sea para que alguien mas sepa que quisimos hacer o para acordarnos que queríamos hacer nosotros. Van a guardar el script de hoy y lo abren en una semana y me dicen si se acuerdan exactamente de que querían hacer. --- class: title-slide, inverse, bottom background-image: url(https://images.unsplash.com/photo-1555861496-0666c8981751?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80) background-size: cover # Errores .right[ Foto de [Unsplash](https://unsplash.com) ] --- ## 1.4 Usar R ### Tipos de errores No se tomen los errores de manera personal, es como R se comunica con ustedes y son muuuuuuuy comunes. Ademas tomemoslo como algo bueno que nos informe si nos equivocamos y una oportunidad para aprender algo. - Si sale error, en practica no corre lo que le pidieron. ```r 3 = 4 ``` Error in 3 = 4 : lado izquierdo de la asignación inválida (do_set) Otros mensajes que salen en rojo y son comunes (y no son errores) son: - Warnings, nos advierten pero si corre lo que le pusimos. - Messages, es para darnos mas información de lo que hicimos. --- ## 1.4 Usar R ### Errores más comunes Quiten el # y traten de correr estos códigos. ```r #c("Miriam","Bety","Angel","Denise""Pamela") ``` -- - Falta una coma -- ```r #c("Alvaro","Gabriela","Juan",,"Lisset") ``` -- - Sobra una coma -- ```r #c("Majo","Irma","Paulina" ``` -- - Falta un paréntesis -- ```r #c("Majo","Irma,"Paulina") ``` -- - Falta una comilla --- ## 1.4 Usar R ### Errores Muchos errores nos los marca con una tachita en un circulito rojo en el **editor de código**. -- Pero que tal este? ```r #Alumno ``` -- - Esta mal escrito, nuestro objeto es **Alumnos** por lo que le falta una **s** al final. -- Es importante que nombremos los objetos con nombres que nos hagan sentido. - R no acepta que los nombres comiencen con un numero (Eg."1Alumnos"). - Pero si pueden terminar con un numero (Eg."Alumnos1"). - Yo uso mayúsculas para nombrar mis objetos. Hay quienes usan _ (Ej. "Los_Alumnos"). Hay quienes usan . (Ej. "Los.alumnos"). - Para ayudar a nuestra memoria, hay que ser consistentes. --- class: title-slide # Su turno
- Abran RStudio <br> - Escriban en la consola y denle enter<br> - Abran un script y realizen una suma<br> --- class: title-slide, inverse, bottom background-image: url(https://images.unsplash.com/photo-1538766017398-415434a31a5b?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80) background-size: cover ## Recapitulando Esta clase: - Que es R? - Partes de RStudio - Clases de objetos Siguiente clase: - Instalar y cargar paquetes - Directorios - Cargar csv y excel .right[ ### Contacto Para dudas, comentarios y sugerencias: <br> Escríbeme a miriamjlerma@gmail.com Este material esta accesible <br> y se encuentra en: mi [
github](https://github.com/MiriamLL/Curso_CIAD/) y mi [
página](https://www.miriam-lerma.com/) ] <h1> .right[ [
</h1>volver](https://www.miriam-lerma.com/teaching.html) ]