Videos de ésta presentación en: https://youtube.com/playlist?list=PLaN9xtr_Zow1pzQKyLHKYrntmOxOkow6t
¿Qué es R?
Un lenguaje de programación que…
- es interpretado
- es sensible a mayúsculas (case sensitive)
- usa formato libre (contraste de
Python
) - usa línea de comandos “prompt”
- es Orientado a Objetos
- usa evaluaciones Intermedias
- evalúa las funciones dependiendo del contexto
- es BASE 1
Instalación de R
Siga las instrucciones en Contento 2020, para la instalación del software R (Páginas 22 y 23).
Instale R Studio
https://posit.co/download/rstudio-desktop/
Sublime
Los editores de texto permiten modificar archivos sin cambiar su formato. Ejemplo: Block de Notas. Instale el editor de texto \verb+Sublime+, de https://www.sublimetext.com/
R en línea
- Google Colab, usando el enlace: https://colab.research.google.com/#create=true&language=r, o alternativamente el enlace https://colab.to/r
- Ó en : https://rdrr.io/snippets/
Se explica en: https://towardsdatascience.com/how-to-use-r-in-google-colab-b6e02d736497
R Studio
La interfaz de R Studio es la siguiente:
Vamos a revisarla parte por parte:
Los páneles son:
- Scripts
- Terminal
- Variables
- Ayuda y Gráficos
Primer uso
File ➡️ New Project
New Project
Lo nombramos:
Queda así:
Programación: la línea de comandos y los scripts
Tipos de instrucciones
Asignaciones
En programación asignación de una cantidad implica:
- Definir su nombre
- Definir su tipo (tipo de datos)
- Definir su valor
Asignaciones en R
- Usando el igual:
a=100
- Usando la flecha (menor-que guión):
a<-100
Comandos
Son las instrucciones que no son a asignaciones; ejemplos: modificar una cantidad, ejecutar una función, leer una base de datos, etc.
¿cómo ingresar las instrucciones?
Línea de comandos
El sistema tiene un prompt -en este caso >
, después del cual se ingresan las instrucciones y se ejecutan de manera secuencial. el prompt no se escribe, “sale solo”
La línea de comandos es útil para cálculos cortos y sencillos.
Scripts / Programas
Las instrucciones se escriben en un archivo (script, o programa). Se carga el script/programa diciéndole al sistema que lo ejecute.
Los scripts se usan para operaciones más complejas o repetitivas.
Programación: la línea de comandos y los scripts
Comandos
Son las instrucciones que no son a asignaciones; ejemplos: modificar una cantidad, ejecutar una función, leer una base de datos, etc.
¿cómo ingresar las instrucciones?
Línea de comandos en R
- Se representa por el símbolo
>
- Se teclea la instrucción después del
>
- Se ejecuta inmediatamente con ENTER
Ejemplo: Suma
Defina dos constantes, llamadas y . Asígneles los valores y . Asigne su suma a una nueva variable .
a<-300
b<-300
c<-a+b
Primeras Instrucciones en R
Comentarios
Se incluyen en los scripts para facilitar la lectura, explicar el código. No se ejecutan. Es todo lo que está un una línea después del símbolo numeral:
#soy un comentario
Implementación computacional
tipos de variables
- contínua los valores (observaciones, mediciones) son números reales en un rango. Ej. la estatura.
- discreta los val. (observaciones, mediciones) son numeros enteros en un rango. Ej. la edad, número de personas en un espacio.
- Categórica Ordinal las observaciones toman etiquetas organizables.
- Categórica Nominal Las observaciones tienen etiquetas no organizables.
Implementación
- Las variables contínuas se representan en R por el tipo de datos:
double
- Las variables discretas se representan en R por el tipo de datos:
integer
- Las variables categóricas, tanto ordinal como nominal, se pueden representar en R con el tipo de datos
character
. - Las variables categóricas ordinales pueden ser también
logical
.
Se explica en: https://swcarpentry.github.io/r-novice-inflammation/13-supp-data-structures/
Ejemplo, teclee los siguientes comandos
> x = "palabra"
> typeof(x)
La salida debe ser character
indicando que el tipo de datos de la variable x
es caractér.
Ejemplo, teclee los siguientes comandos
> y = 1:10
> typeof(y)
El comando 1:10
genera un vector con los números del 1 al 10
inclusive. El tipo de datos de y
es entero.
Ejemplo
Teclee los siguientes comandos
>z = as.numeric(y)
>typeof(z)
Con la función as.numeric
se indica que z
es de tipo doble. %
Programación Orientada a Objetos
Estructuras de Datos
En programación la información se organiza en estructuras de datos. Ejemplo: variables en R, celdas en una Hoja de cálculo. Hay diferentes tipos de estr. de datos.
Todas las variables en R son estructuras de datos llamadas objetos. Los objetos:
- Se diferencian por un nombre.
- Pueden tener diferentes atributos.
- Se organizan en clases
Atributos comunes de los objetos
- Su longitud. Ejemplo
y = 1:10
length(y)
- Su dimensión (matrices). Ejemplo:
matA = matrix(0,2,3)
dim(g)
- Su clase: Ejemplo
class(matA)
POO
R es un lenguaje orientado a “objetos”. Los objetos son estructuras de datos que tienen características y funciones. Todo en R es un objeto.
Información desde R
R provee funciones que dan información sobre las variables:
class()
length()
attributes()
typeof(z)
Tipos de datos en R: vector
Colección de elementos usualmente de tipo character
, logical
(TRUE
o FALSE
), integer
, o numeric
. Se puede generar así:
> vector()
: crea un vector logico vacío> vector("character", length=5)
crea una lista de 5 caracteres, vacíos> numeric(5)
: crea un vector numérico de 5 elementos, ceros> x<-c(1,2,3)
: (función concatena) crea un vector numérico de 3 elementos, y les asigna los valores 1,2, y 3.- Como salida de otras funciones (por ejemplo si es un vector,
is.na(x)
también es un vector.
Se explica en: https://swcarpentry.github.io/r-novice-inflammation/13-supp-data-structures/
Añadir elementos a un Vector
Si tenemos, por ejemplo, un vector con nombres:
> z<-c("Sara","Sebas","Snoopy")
Entonces, para combinar el vector z, que ya existía, con el nuevo elemento:
> z<-c(z,"Annette")
Lo imprimimos con:
> z
Y obtenemos:
[1] "Sarah" "Sebas" "Snoopy" "Annette"
Vectores de sucesiones
El comando: > serie<-1:10
genera el vector llamado serie, y su contenido son los números del 1 al 10.
El comando > b<-seq(5)
genera un vector llamado b, y su contenido son los números del 1 al 5
Ejercicio
¿qué hace? la siguiente instrucción?
> seq(from = 1, to = 10, by = 0.1)
Se explica en: \url{https://swcarpentry.github.io/r-novice-inflammation/13-supp-data-structures/
Vectores: Datos Faltantes
R avisa cuando faltan datos en los vectores. Se representa como NA
, que significa no disponible
(available, en inglés).
Ejemplos:
> x<-c(0.5,NA,0.7)
> x<-c(TRUE,FALSE,NA)
La función `is.na()+ indica si los elementos representan datos faltantes:
> x<-c("a",NA,"c","d",NA)
> is.na(x)
[1] FALSE TRUE FALSE FALSE TRUE
Más valores especiales
Infinito:
> 1/0
[1] Inf
Indefinido (Not A Number, o NaN):
> 0/0
[1] NaN
¿cómo ingresar las instrucciones?
Línea de comandos en R
Como hemos venido haciendo, escribiendo cada instrucción en la línea de comandos, ejecutando con Enter.
Scripts / Programas en R
Se escribe la secuencia de comandos en un editor de texto. R para Windows trae un editor de texto, (Contento 2020, pg. 23). O se puede usar sublime, o el Block de Notas. \ Después de escrito el script se ejecuta desde R.
Cambiar la carpeta desde la que se cargan los scripts (Windows)
La ruta es: Session ➡️ Set Working Directory ➡️ Choose Directory.
Después de eso se debe elegir el directorio en el panel que aparece.
Bases de Ciencia de Datos: Orden
- Estructura de Directorios
- ¿Cómo nombrar archivos?
- Formatos de Datos UTF-8
Cargar un script en R
Ruta
Desde la consola de R, se puede indicar al software cuál es la ruta para ello se puede seguir el ejemplo en Contento (2020), pg. 33. Por ejemplo, puede ser algo así:
> setwd("C:/Users/sunombredeusuario/DirectorioDeClase/")
Recuerde que para saber cuál es la estructura de directorios en Windows, puede usar el comando TREE:
CMD /c "Tree /F /A > Resultant.txt"
Más información en: https://www.webnots.com/how-to-download-tree-view-of-directories-in-windows-10/
Cargar un código en R, dentro de la consola de R
> source("nombredearchivo.R")
Ingreso de Tablas
Ingresar datos en Tablas: por hoja de cálculo
Instalación de Sublime:
En Google Sheets, crear una nueva:
Ingresar los datos
Posible Error
Al ingresar el decimal con punto, Sheets lo trata como una fecha!
Se cambia la configuración local:
Y ahora si es un número:
Ingresar datos en Tablas: Hoja de Cálculo
Descargar como CSV
Queda con el nombre:
Renombrar:
Para que todo quede ordenado, cree una carpeta llamada proyecto1
Mueva el archivo de datos allí
La ruta la puede hallar con atributos
En este caso
C:\\Users\\IEUser\\Documents\\proyecto1
En R, use setwd
para cambiar el dir:
Se puede cargar con el comando read.table
:
read.table("indicadores.csv")
Solucionar el error incomplete final line
Error, falta una línea al final
Abrir con:
Sublime
Añadir Una línea (Enter)
Carga sin error
Revisamos la variable en R
Ingresar datos en Tablas: Colab
Para Cargar en Colab.
(1) Panel Lateral, subir archivo
(2) Queda allí
(3) Se puede cargar con read-table
Ejercicio
Lleve a cabo ejercicios 1,2 y 3 de Contento, página 31.