Está en la página 1de 6

1

Programación práctica con R


Garrett Grolemund
Bienvenido
Este es el sitio web de “Programación práctica
con R”. Este libro le enseñará cómo programar
en R, con ejemplos prácticos. Lo escribí para no
programadores para brindar una introducción
amigable al lenguaje R. Aprenderá cómo cargar
datos, ensamblar y desensamblar objetos de
datos, navegar por el sistema ambiental de R,
escribir sus propias funciones y utilizar todas las
herramientas de programación de R. A lo largo
del libro, utilizará sus nuevas habilidades para
resolver problemas prácticos de ciencia de datos.
Si ya se siente cómodo con R y, en cambio, le
gustaría centrarse en cómo analizar datos
utilizando los paquetes Tidyverse de R, le
recomiendo R for Data Science , un libro del que fui coautor con Hadley Wickham.
Este sitio web es (y siempre será) de uso gratuito y tiene la licencia Creative Commons
Atribución-NoComercial-SinDerivadas 4.0 . Si desea una copia física del libro, puede
solicitarla en Amazon ; fue publicado por O'Reilly en julio de 2014. Si desea contribuir,
considere informar un error tipográfico o dejar una solicitud de extracción
en github.com/rstudio-education/hopr .
El libro está escrito en RMarkdown con bookdown .

2
PREFACIO

Este libro le enseñará cómo programar en R. Pasará de cargar datos a escribir sus propias
funciones (que superarán las funciones de otros usuarios de R). Pero esta no es una
introducción típica a R. Quiero ayudarlo a convertirse en un científico de datos, además de un
científico informático, por lo que este libro se centrará en las habilidades de programación
más relacionadas con la ciencia de datos.
Los capítulos del libro están organizados según tres proyectos prácticos; dado que son
proyectos bastante sustanciales, abarcan varios capítulos. Elegí estos proyectos por dos
razones. Primero, cubren la amplitud del lenguaje R. Aprenderá a cargar datos, ensamblar y
desensamblar objetos de datos, navegar por el sistema ambiental de R, escribir sus propias
funciones y utilizar todas las herramientas de programación de R, como if else declaraciones,
bucles for, clases S3, el sistema de paquetes de R y las herramientas de depuración de R. . Los
proyectos también le enseñarán cómo escribir código R vectorizado, un estilo de código
ultrarrápido que aprovecha todas las cosas que R hace mejor.
Pero, lo que es más importante, los proyectos le enseñarán cómo resolver los problemas
logísticos de la ciencia de datos (y hay muchos problemas logísticos). Cuando trabaje con
datos, necesitará almacenar, recuperar y manipular grandes conjuntos de valores sin introducir
errores. A medida que avance en el libro, le enseñaré no solo cómo programar con R, sino
también cómo utilizar las habilidades de programación para respaldar su trabajo como
científico de datos.
No todos los programadores necesitan ser científicos de datos, por lo que no todos los
programadores encontrarán útil este libro. Este libro le resultará útil si se encuentra en una de
las siguientes categorías:
 Ya utilizas R como herramienta estadística, pero te gustaría aprender a escribir tus
propias funciones y simulaciones con R.
 Le gustaría aprender a programar por su cuenta y le parece útil aprender un lenguaje
relacionado con la ciencia de datos.
Una de las mayores sorpresas de este libro es que no cubro aplicaciones tradicionales de R,
como modelos y gráficos; en cambio, trato a R puramente como un lenguaje de programación.
¿Por qué este enfoque limitado? R está diseñado para ser una herramienta que ayude a los
científicos a analizar datos. Tiene muchas funciones excelentes que crean gráficos y ajustan
modelos a los datos. Como resultado, muchos estadísticos aprenden a utilizar R como si fuera
una pieza de software: aprenden qué funciones hacen lo que quieren e ignoran el resto.

3
Este es un enfoque comprensible para aprender R. Visualizar y modelar datos son habilidades
complicadas que requieren toda la atención de un científico. Se necesita experiencia, criterio y
concentración para extraer información confiable de un conjunto de datos. No recomendaría
que ningún científico de datos se distraiga con la programación de computadoras hasta que se
sienta cómodo con la teoría básica y la práctica de su oficio. Si desea aprender el oficio de la
ciencia de datos, le recomiendo el libro R para ciencia de datos , mi volumen complementario
a este libro, coescrito con Hadley Wickham.
Sin embargo, aprender a programar debería estar en la lista de tareas pendientes de todo
científico de datos. Saber programar lo convertirá en un analista más flexible y aumentará su
dominio de la ciencia de datos en todos los sentidos. Mi metáfora favorita para describir esto
fue presentada por Greg Snow en la lista de correo de ayuda de R en mayo de 2006. Usar
funciones en R es como viajar en autobús. Escribir funciones en R es como conducir un
coche.
Los autobuses son muy fáciles de usar, sólo necesitas saber en qué autobús subir,
dónde subir y dónde bajar (y debes pagar tu tarifa). Los coches, en cambio, requieren
mucho más trabajo: necesitas tener algún tipo de mapa o direcciones (incluso si el
mapa está en tu cabeza), necesitas poner gasolina de vez en cuando, necesitas conocer
las reglas de la vía (tener algún tipo de licencia de conducir). La gran ventaja del
coche es que puede llevarte a muchos lugares a los que el autobús no llega y es más
rápido para algunos viajes que requerirían hacer transbordo entre autobuses.
Usando esta analogía, programas como SPSS son buses, fáciles de usar para cosas
estándar, pero muy frustrantes si quieres hacer algo que aún no está preprogramado.
R es un SUV con tracción en las 4 ruedas (aunque respetuoso con el medio ambiente)
con una bicicleta en la parte trasera, un kayak en la parte superior, buenos zapatos para
caminar y correr en el asiento del pasajero y equipo para escalar montañas y
espeleología en la parte trasera.
R puede llevarlo a cualquier lugar al que desee ir si se toma el tiempo para aprender a
usar el equipo, pero eso llevará más tiempo que aprender dónde están las paradas de
autobús en SPSS. - Greg Nieve
Greg compara R con SPSS, pero supone que se utilizan todos los poderes de R; en otras
palabras, que aprendas a programar en R. Si solo usas funciones que preexisten en R, estás
usando R como SPSS: es un autobús que solo te puede llevar a ciertos lugares.
Esta flexibilidad es importante para los científicos de datos. Los detalles exactos de un
método o simulación cambiarán de un problema a otro. Si no puede crear un método adaptado

4
a su situación, puede verse tentado a hacer suposiciones poco realistas sólo para poder utilizar
un método inadecuado que ya existe.
Este libro le ayudará a dar el salto del autobús al coche. Lo he escrito para programadores
principiantes. No hablo de la teoría de la informática; en estas páginas no hay discusiones
sobre lo grande O()y lo pequeño . o()Tampoco entro en detalles avanzados como el
funcionamiento de la evaluación diferida . Estas cosas son interesantes si piensas en la
informática a nivel teórico, pero son una distracción cuando aprendes a programar por
primera vez.
En cambio, te enseño cómo programar en R con tres ejemplos concretos. Estos ejemplos son
breves, fáciles de entender y cubren todo lo que necesita saber.
He enseñado este material muchas veces en mi trabajo como Master Instructor en RStudio.
Como docente, he descubierto que los estudiantes aprenden conceptos abstractos mucho más
rápido cuando se ilustran con ejemplos concretos. Los ejemplos también tienen una segunda
ventaja: proporcionan una práctica inmediata. Aprender a programar es como aprender a
hablar otro idioma: progresas más rápido cuando practicas. De hecho, aprender a
programar es aprender a hablar otro idioma. Obtendrá los mejores resultados si sigue los
ejemplos del libro y experimenta cada vez que se le ocurre una idea.

El libro es un complemento de R para ciencia de datos . En ese libro, Hadley Wickham y yo


explicamos cómo usar R para hacer gráficos, modelar datos y escribir informes. Ese libro
enseña estas tareas como habilidades de ciencia de datos, que requieren juicio y experiencia,
no como ejercicios de programación, que también lo son. Este libro le enseñará cómo
programar en R. No supone que haya dominado las habilidades de ciencia de datos que se
enseñan en R para ciencia de datos (ni que alguna vez tenga la intención de hacerlo). Sin
embargo, este conjunto de habilidades amplifica ese. Y si domina ambos, será un poderoso
científico de datos mejorado por computadora, apto para obtener un salario alto e influir en el
diálogo científico.

0.1 Convenciones utilizadas en este libro


En este libro se utilizan las siguientes convenciones tipográficas:
Cursiva :: Indica nuevos términos, URL, direcciones de correo electrónico, nombres de
archivos y extensiones de archivos.

5
Constant width:: Se utiliza para listados de programas, así como dentro de párrafos para hacer
referencia a elementos del programa como nombres de variables o funciones, bases de datos,
tipos de datos, variables de entorno, declaraciones y palabras clave.
Constant width bold:: Muestra comandos u otro texto que el usuario debe escribir
literalmente.
Constant width italic:: Muestra texto que debe reemplazarse con valores proporcionados por
el usuario o por valores determinados por el contexto.
Para comentar o hacer preguntas técnicas sobre este libro, presente un problema
en github.com/rstudio-education/hopr .
0.2 Agradecimientos
Muchas personas excelentes me han ayudado a escribir este libro, desde mis dos editoras,
Courtney Nash y Julie Steele, hasta el resto del equipo de O'Reilly, que diseñó, corrigió e
indexó el libro. Además, Greg Snow me permitió generosamente citarlo en este prefacio. Les
ofrezco a todos mi más sincero agradecimiento.
También me gustaría agradecer a Hadley Wickham, quien ha dado forma a mi forma de
pensar y enseñar R. Muchas de las ideas de este libro provienen de Estadística 405, un curso
que ayudé a Hadley a impartir cuando era estudiante de doctorado en la Universidad Rice.
Otras ideas surgieron de los estudiantes y profesores de Introducción a la ciencia de datos con
R, un taller que imparto en nombre de RStudio. Gracias a todos ustedes. Me gustaría ofrecer
un agradecimiento especial a mis asistentes docentes Josh Paulson, Winston Chang, Jaime
Ramos, Jay Emerson y Vivian Zhang.
Gracias también a JJ Allaire y al resto de mis colegas de RStudio que proporcionan RStudio
IDE, una herramienta que hace que sea mucho más fácil usar, enseñar y escribir sobre R.
Finalmente, me gustaría agradecer a mi esposa, Kristin, por su apoyo y comprensión mientras
escribía este libro.

FUENTE: https://rstudio-education.github.io/hopr/preface.html

Seguir…

También podría gustarte