Cómo empezar a aprender R (segunda parte)

Seguimos con R, con la segunda parte del post sobre cómo empezar a aprender este lenguaje de programación si estás interesado. En la primera quise destacar que lo importante son las ganas de aprender, independientemente de tu experiencia o tus estudios. No importa si tu perfil no es técnico o científico (aunque ayude), siempre y cuando no te falten ganas.

Si sabes programar o sobre estadística, esta especialización en Data Science impartida por la Universidad de Johns Hopkins a través de Coursera te resultará mucho más fácil. Si no sabes, se aprende. Eso sí, siempre y cuando estés motivado. ¿Sino qué sentido tiene estudiar todo esto?

Dicho lo dicho, en esta segunda parte del post explico un poco más sobre cada uno de los cursos. En la parte anterior lo hice sobre puntos que tienen todos ellos en común, aunque me faltó añadir un par de consejos bastante útiles a la hora de hacer los quizzes y assignments:

  • Típica frase que estamos todos cansados de oír, Google es tu mejor amigo: si no sabes algo, búscalo en Google. Si lo prefieres cambia Google por Yahoo o la biblioteca de tu pueblo, el punto aquí es que aunque la mayoría de cosas se explica en los apuntes, hay partes específicas de los quizzes o assignments que requieren que busques más información por tu cuenta. No tiene mayor dificultad, ya que si algo tenemos de sobra a nuestro alcance es la información.
  • Los foros y tus compañeros del curso son también grandes amigos: Cada vez que he hecho una pregunta en los foros, me han contestado más o menos al instante. Aunque sea online, se percibe mucho compañerismo y ganas de ayudar.

La especialización tiene 9 cursos que se pueden hacer de forma independiente, sin embargo están relacionados y hacer un curso facilita los que hagas posteriormente. Yo los he hecho de 2 en 2 en el orden que están en la web, que es el mismo orden que tienen en este post.

1. The Data Scientist’s Toolbox:

Este es el curso más fácil de todos. Vale la pena empezar el segundo mientras se hace este porque es muy sencillo. Los vídeos de la primera semana explican de qué van el resto de los cursos, y los de la segunda presentan las herramientas con las que se va a trabajar (Git, R Studio). Cuenta con 3 quizzes y un proyecto muy sencillo.

2. R Programming:

Para mí fue el curso más difícil, porque, como ya mencioné en la primera parte del post, no tenía conocimientos de programación (HTML y CSS no cuentan…). Los vídeos los entendí a la perfección, pero el problema lo encontré a la hora de hacer el primer assignment.  En este caso hay 3, uno la 2ª semana, otro la 3ª y otro la 4ª, y algo que no sabía en ese momento y de lo que me di cuenta al avanzar con los vídeos, es que para hacer el proyecto de la semana 2, me hubiera venido muy bien ver los videos de la 3, y para hacer el de la 3, debería haber visto los de la 4. Por lo general no es así, en el resto de cursos con ver los vídeos de esa semana vale, pero en este viene bien.

Al final terminé R Programming con distinción (te lo dan si tienes más de un 90%) y es que todo empezó a tener sentido en mi cabeza cuando me di cuenta de que un lenguaje de programación es un lenguaje más y que a veces no tienes más que pensar de forma lógica. Claramente esto es solo aplicable para escribir funciones sencillas, ya que para tener conocimientos avanzados de R, como con cualquier lenguaje, necesitas profundizar más y ganar experiencia, pero aun así se pueden hacer muchas cosas teniendo conocimientos básicos de este lenguaje.

El resto de cursos, hasta que llegué al de Statistical Inference, me resultaron bastante más sencillos.

3. Getting and Cleaning Data:

En este aprendes a limpiar y ordenar las bases de datos con las que trabajes. En caso de que tengan NAs o que quieras filtrarlas o seleccionar solo una parte de los datos, aquí te enseñan cómo. El curso tiene 3 quizzes y 1 assignment obligatorio. Hay otro assignment llamado Swirl que es opcional (aunque da puntos extra si lo haces) y que viene muy bien para repasar conceptos.

4. Exploratory Data Analysis:

A grandes rasgos en este curso aprendes a hacer gráficos con R para analizar los datos. Es muy importante porque los gráficos son un tema muy recurrente en el resto de cursos, además de ser de vital importancia a la hora de analizar. Como analista, independientemente de si utilizas R, Excel o lo que te venga a la cabeza, los gráficos son esenciales a la hora de empezar a analizar, tanto para detectar outliers como para saber de qué forma se relacionan las distintas variables. Se suele hablar de la importancia de la representación gráfica a la hora de comunicar los datos, y en realidad la relevancia de esta empieza a la hora de analizarlos cuando es solo el analista el que va a verlos.

Obviamente puestos a elegir entre R y Excel, trabajar con R es mucho más ágil porque puedes hacer en 1 paso lo que en Excel tardas 10. Este curso tiene 2 quizzes y 2 proyectos.

5. Reproducible Research:

Habla de la importancia de que el análisis y el código estén disponibles para otros para que puedan reproducir el estudio realizado. Tiene 2 assignments y 2 quizzes.

6. Statistical Inference:

Aquí se cambia de profesor y la cosa se complica otra vez. Muchos creen que por el profesor, aunque en mi opinión es una mezcla en gran parte por el tema y en una pequeña por quien lo imparte. Todos los anteriores cursos los imparte Roger D. Peng, y este lo hace Brian Caffo. En el anterior post expliqué más en detalle mi opinión sobre los profesores.

El curso es como desempolvar los apuntes de estadística de la uni, en mi caso de una optativa de la carrera de Publicidad y más tarde de la carrera de Market Research (obligatorias en este caso). Se habla sobre probabilidad, varianza, distribuciones, intervalos de confianza, t-test, pvalues, etc… A los vídeos y a los quizzes hay que dedicarles más tiempo que en los cursos anteriores. Yo hice este curso en el mismo mes que Reproducible Research, e intenté terminar el de Reproducible Research rápido para dedicarle la mayoría del tiempo al de estadística.

El curso tiene 4 quizzes, 1 assignment obligatorio y el swirl assignment, y los vídeos están disponibles en el canal de Youtube de Brian Caffo. Hay una serie de vídeos llamados Homework que son de ayuda para hacer los quizzes, que son bastante difíciles.

7. Regression Models:

Este curso junto al siguiente (Practical Machine Learning) y el de R Programming fueron mis cursos preferidos, y también los que más tiempo me llevaron. Si te gusta la estadística, lo disfrutarás. Le quitaría la parte matemática que se utiliza para explicar funciones, ya que, aunque es opcional en este curso (no en el anterior) puede confundir a la hora de entender algunos conceptos, y además no la veo necesaria dado lo que se profundiza. A pesar de eso, el tema de regression models es precioso y este curso va de analizar la relación entre una variable dependiente con otras variables independientes. Se centra mucho en linear models.

Tiene 4 quizzes, 1 assignment obligatorio y el swirl assignment, y está también disponible en el canal de Youtube de Brian.

8. Practical Machine Learning:

Se podría decir que es la parte más práctica de Regression Models, y es impartido por Jeff Leek. Se centra en crear modelos predictivos en R, entre los cuales se encuentran Random Forrest, Boosting, Forecasting, etc… Requiere bastante trabajo pero me encantó. Tiene 4 quizzes y 1 proyecto.

9. Developing Data Products:

Noveno y último curso, y el que me encuentro haciendo en la actualidad. Después de haber hecho los anteriores, considero que este es bastante sencillo. Por resumir (otra vez) muchísimo, va de herramientas para construir aplicaciones o dashboards interactivos con Shiny, RCharts o GoogleVis, y presentaciones con Slidify o RStudio presenter. Tiene 3 quizzes y 1 proyecto.

Hay un proyecto final (the Data Science Capstone) en la especialización, que solo está disponible cuando has terminado los 9 cursos, así que yo todavía no he podido apuntarme. Cuando lo haga, os lo cuento!

Poco más puedo añadir, solo incidir una vez más que esta especialización es para todo aquel que tenga ganas de hacerla, aunque no tengas un perfil técnico. Si quieres desarrollar tu carrera como analista, te la recomiendo al 100%. No voy a mentir, requiere tiempo y hay partes que fáciles no son, pero ninguna es imposible y se disfruta muchísimo aprender algo nuevo que además te motiva.

Lo dicho en el anterior post, si alguien está interesado en hacer la especialización y tiene alguna duda, estoy disponible por Twitter, Linkedin, dejando un mensaje aquí o por email :-)

“Tras 8 años trabajando en Internet, en Noviembre de 2012 me mudé a Londres para seguir desarrollando mi carrera como analista web. Actualmente trabajo en esta ciudad como Senior Web Analyst para el grupo NET-A-PORTER.
Mis lemas en la vida son que hagas lo que hagas siempre puedas mantener la conciencia tranquila, y que la fortaleza es más importante que la suerte.”

Twitter LinkedIn 

Hecho con cariño desde Madrid por las Madrid Geek Girls.