Introducción a R y RStudio
- Usa RStudio para escribir y correr programas en R.
- R tiene operadores aritméticos y funciones matemáticas usuales.
- Utilizar
<-
para asignar valores a variables. - Utilizar
ls()
para listar las variables en el programa. - Utilizar
rm()
para eliminar objetos en el programa. - Utilizar
install.packages()
para instalar paquetes (libraries).
Gestión de proyectos con RStudio
- Usar RStudio para crear y gestionar proyectos con un diseño consistente.
- Tratar los datos brutos como de sólo lectura.
- Tratar la salida generada como disponible.
- Definición y aplicación de funciones separadas.
Buscando ayuda
- Usar
help()
para obtener ayuda online de R.
Estructuras de datos
- Usar
read.csv
para leer los datos tabulares en R. - Los vectores, factores, listas y dataframes son estructuras de datos en R
- Los tipos de datos básicos en R son double, integer, complex, logical, y character.
- Los factors representan variables categóricas en R.
Explorando data frames
- Usar
cbind()
para agregar una nueva columna a un data frame - Usar
rbind()
para agregar una nueva fila a un data frame - Quitar filas de un data frame
- Usar
na.omit()
para remover filas de un data frame con valoresNA
- Usar
levels()
yas.character()
para explorar y manipular columnas de clase factor - Usar
str()
,nrow()
,ncol()
,dim()
,colnames()
,rownames()
,head()
ytypeof()
para entender la estructura de un data frame - Leer un archivo csv usando
read.csv()
- Entender el uso de
length()
en un data frame
Haciendo subconjuntos de datos
- Los índices en R comienzan con 1, no con 0.
- Acceso a un elemento por posición usando
[]
. - Acceso a un rango de datos usando
[min:max]
. - Acceso a subconjuntos arbitrarios usando
[c(...)]
. - Usar operaciones lógicas y vectores lógicos para acceder a subconjuntos de datos
Control de flujo
- Usar
if
yelse
para realizar elecciones. - Usar
for
para operaciones repetidas.
Creando gráficas con calidad para publicación con ggplot2
- Usar
ggplot2
para crear gráficos. - Piensa cada gráfico como capas: estética, geometría, estadisticas, transformaciones de escala, y agrupamiento.
Vectorización
- Uso de operaciones vectorizadas en lugar de bucles.
Funciones
- Usar
function
para definir una nueva función en R. - Usar parámetros para ingresar valores dentro de las funciones.
- Usar
stopifnot()
para revisar los argumentos de una función en R de manera flexible. - Cargar funciones dentro de programas empleando
source()
.
Guardando datos
- Guardar gráficos desde RStudio usando el botón de ‘Export’.
- Usar
write.table
para guardar datos tabulares.
División y combinación de data frames con plyr
- Uso del paquete
plyr
para dividir datos, aplicar funciones sobre subconjuntos, y combinar los resultados
Manipulación de data frames con dplyr
- Usar el paquete
dplyr
para manipular data frames. - Usar
select()
para seleccionar variables de un data frame. - Usar
filter()
para seleccionar datos basándose en los valores. - Usar
group_by()
ysummarize()
para trabajar con subconjuntos de datos. - Usar
mutate()
para crear nuevas variables.
Manipulación de data frames usando tidyr
- Usar el paquete
tidyr
para cambiar el diseño de los data frames. - Usar
gather()
para invertir del formato ancho al formato largo. - Usar
spread()
para invertir del formato largo al formato ancho.
Produciendo informes con knitr
- Informes mixtos escritos en R Markdown usando un programa escrito en R.
- Especificar opciones de fragmento para controlar el formateo.
- Usar
knitr
para convertir estos documentos en PDF y en otros formatos.
Escribiendo buen software
- Documenta qué y por qué, no cómo.
- Divide los programas en funciones cortas de un solo propósito.
- Escribe pruebas re-ejecutables.
- No repitas tu código.
- Se coherente en la nomenclatura, indentación y otros aspectos del estilo.