Python vs.R para ciencia de datos
Mientras que puedo ser tentado a recomendar Python (Python es mi principal, pero tengo algo de conocimiento práctico de R), quiero presentar una evaluación objetiva de la eficacia de los dos idiomas para un principiante. Esto se debe principalmente a que la elección correcta definitivamente dependerá de su propia situación particular.
¿Por que quieres aprender?
El primer factor, y probablemente el más importante, que debe considerar es la razón por la que desea aprender. Si es un biólogo capacitado, por ejemplo, y desea adquirir algunas habilidades de programación para poder comprender mejor su conjunto de datos, o si está familiarizado con otros lenguajes de programación científica como MATLAB, entonces debería considerar ver algunos tutoriales de R en YouTube porque ser más simple e intuitivo para ti que Python. O si usted es un ingeniero de software con dominio de otros lenguajes como C / C ++ y Java y le gustaría pasar a la ciencia de datos, Python sería el indicado, al igual que la mayoría de los otros lenguajes de programación populares, Python es una programación orientada a objetos (OOP) y sería mucho más intuitivo para ti que R.O, quizás haya estado leyendo recientemente sobre el fascinante campo de la ciencia de datos y le gustaría incursionar en él. En ese caso, cualquiera de los dos estaría realmente bien y dependería más de los otros factores que de este.
¿Sus amigos / colegas ya son expertos en uno de estos idiomas?
Una gran ventaja que puede tener si está aprendiendo un nuevo idioma es el apoyo de la comunidad. Obtener ayuda de la comunidad es bastante esperado entre los programadores y generalmente se considera una habilidad importante. Como principiante, puede resultar confuso aprender cómo obtener ayuda, especialmente porque no hay muchos recursos en línea en el arte de obtener ayuda de la comunidad. Desarrollar una intuición y saber qué preguntar cuando hay un error en el código es esencial. Si conoce a alguien que sea competente en Python, o si otro investigador en su laboratorio ha estado trabajando con R, entonces su mejor opción sería ir con lo que ellos saben porque entonces siempre puede hacerles preguntas si se atasca.
¿Está interesado solo en estadísticas y análisis de datos, o desea aprender otras áreas como el aprendizaje automático y la inteligencia artificial?
Una diferencia importante en las utilidades de Python y R es que el primero es un lenguaje extremadamente versátil, en comparación con el último. Python es un lenguaje de programación completo, lo que significa que puede recopilar, almacenar, analizar y visualizar datos, al mismo tiempo que crea e implementa canalizaciones de aprendizaje automático en producción o en sitios web, todo usando solo Python. Por otro lado, R es puramente para estadísticas y análisis de datos, con gráficos que son más agradables y personalizables que los de Python. R usa el enfoque Grammar of Graphics para visualizar datos en su biblioteca # ggPlot2. Quizás un poco demasiado simplificado, pero puede estar justificado decir que si quieres ser un analista de datos, R debería ser tu opción preferida, mientras que si quieres ser un científico de datos, Python es la mejor opción. Es el dilema de generalización versus especialización.
Pensamientos finales
La ciencia de datos como un campo distinto surgió solo en los últimos diez años y, como resultado, ha evolucionado constantemente. Pero lo que ha sido constante es que cada día se automatiza más y más flujo de datos. Los empleados con una multitud de habilidades, como ingeniería de datos, visualización de datos, ingeniería de aprendizaje automático, integración de servicios en la nube e implementación de modelos, siempre tendrán más demanda que aquellos que se especializan solo en un aspecto del flujo de trabajo de ciencia de datos. Gran parte de la progresión del campo ha sido moldeada por la automatización y solo los empleados con buenas habilidades de programación se resisten a ella. La especialización en la creación de modelos impresionantes de aprendizaje automático no será suficiente en un futuro cercano a menos que, por supuesto, seas extremadamente bueno en eso.
El panorama de la industria en este momento es tal que, en el nivel principiante, hay demasiados candidatos que son "bastante" decentes para muy pocos trabajos de ciencia de datos junior disponibles. Pero para los puestos un poco más altos, no hay suficientes profesionales con experiencia o con las habilidades adecuadas. Y para dar el siguiente paso en su carrera, en última instancia, necesitará poder comprender e implementar las otras etapas del flujo de trabajo hasta cierto punto. Entonces, ¿por qué no darse la mayor probabilidad de éxito?
Si aún no está seguro, el mejor consejo que podría dar es que elija Python por ahora y comience a aprender. Más adelante, una vez que tenga un conocimiento práctico bastante bueno, también podrá aprender los conceptos básicos de R. Pero si realmente no se siente cómodo con Python, entonces sabe qué hacer. Su principal prioridad como principiante debe ser familiarizarse con los conceptos básicos de la ciencia de datos y comprender cómo aplicar estos conceptos en escenarios del mundo real, ante todo. Configurar el entorno de codificación podría ser una experiencia algo abrumadora para alguien sin experiencia previa en programación o informática. Sin embargo, configurarlo y comenzar a aprender será una experiencia mucho más fluida con R que con Python. Demasiados de nosotros insistimos en la ideas de ser un científico de datos, y no hay suficientes acciones para convertirse en uno.