Cómo avanzar mi habilidad R al siguiente nivel

Puede que esto no sea para lo que viniste aquí, pero:

  1. Hora. Solo toma tiempo. La gente de stackoverflow probablemente ha estado usando R durante años. Los problemas rara vez son únicos y la mayoría de las preguntas que se hacen probablemente se refieren a problemas que ya han visto antes y que solo saben por experiencia pasada la mejor manera de resolverlos.
  2. Experiencia. Específicamente experiencia laboral o incluso experiencia rigurosa en proyectos. Antes de comenzar mi trabajo como pasante de Data Scientist en noviembre, pensé que tenía un buen manejo de R (ya tenía un año y medio de experiencia en la escuela). Pero me sorprendió cuánto no sabía y cuánto aprendí al abordar cada problema probando los métodos que sabía cómo realizar, y cuándo eso no funcionó (e incluso cuando lo hiciera sería extremadamente ineficiente) Me dirigía a lugares como stackoverflow donde a menudo tenían una respuesta a la pregunta que tenía y algo más. Pero al aprender cómo resolver este problema, supe por la próxima vez que encontré el mismo problema cómo resolverlo.

Entonces, suponiendo que conozca los conceptos básicos e incluso algunas cosas más avanzadas, mi consejo para usted sería que haga todo lo posible para obtener algo de experiencia. Si no puede encontrar un trabajo o ya lo tiene, busque algunos de los datos más sucios en Internet y simplemente practique la limpieza y explore R. Pruebe cosas nuevas. GGplot2 el diablo de algún conjunto de datos. Obtenga algunos datos de Twitter y manipule algunas cadenas. Cree algunos informes de su análisis en Rmarkdown. Desarrolle una aplicación web brillante. Usa Rcpp para algo.

No sé si lo que necesitas está en un libro o en un mooc en alguna parte. Pero en este punto creo que el tiempo y la experiencia son tus mejores amigos. Así que no te consideres estancado porque no sé si eso es posible. El único límite a lo que puede lograr en R o en cualquier lenguaje de programación es la cantidad de tiempo que está dispuesto a dedicarle.

2 sugerencias

  1. Piense en un problema que requiere muchos cálculos (por ejemplo, una simulación de una caminata aleatoria bidimensional). Codifícalo de la manera más ingenua y mejóralo poco a poco. Una vez codifiqué el ejemplo de seis maneras, cada una agregando un tic al anterior. Al final, la velocidad aumentó aproximadamente 1e4 o 1e5.
  2. Escribir código c / c ++. Llámalos en R. Echa un vistazo a .C (), .Call () y Rcpp. Una vez necesito hacer un tapply en un conjunto de datos con alrededor de 100k grupos y millones de filas. Me tomó tanto tiempo en R. Luego escribí una rutina de ac para ello. Tomó alrededor de 20 segundos en su lugar.

Use conjuntos de datos complejos y juegue con ellos. Siempre puede encontrar conjuntos de datos en kaggle, kdnuggets, repositorio UCI. Anímate y compite en kaggle con R. O inscríbete en un curso de cursos avanzados para R en línea … ¡buena suerte!

Debe realizar una revisión de sus elementos con respecto a los elementos en C. Como ya sabe, C es uno de los pocos lenguajes de computadora raíz. Una transferencia entre C y R, entonces, puede reforzar lo esencial. Si así lo deseas para especializarte en R, debes tener esta mentalidad. Usted es un desarrollador de bibliotecas versado en métodos estadísticos y gestión de datos.

Advanced R de Hadley Wickham es un gran recurso para esto.

Bienvenido · Advanced R.