¿Cuál es la diferencia entre un trabajo de ciencia de datos que requiere el uso de software SAS y uno basado en un lenguaje científico (Python, R, Matlab, etc.)?

A diferencia de R y MATLAB, Python es un lenguaje de programación de propósito general. No lo agruparía con R y MATLAB.

Algunas tareas de ciencia de datos están orientadas hacia estadísticas / aprendizaje automático más tradicionales, en cuyo caso puede ser servido por una plataforma como SAS, R, MATLAB ya que muchas bibliotecas / paquetes se han escrito para esos fines especiales.

Algunas tareas de ciencia de datos están más orientadas a la ingeniería, como la implementación de algoritmos de aprendizaje automático para funcionar lo suficientemente rápido en el entorno de producción. En ese caso, pueden necesitarse lenguajes de programación robustos / de nivel inferior, como Java, C ++, Python, etc.

Si tiene un sólido historial de estadísticas, puede hacer lo primero, es decir, analizar datos o probar diferentes algoritmos en los datos y ver qué funciona, etc.

Es posible que necesite una buena formación en informática / ingeniería de software para hacer esto último cuando se trata de implementar realmente en el entorno de producción.

Agregaré a la observación de Taro que “depende” de lo que esté haciendo y afirmaré que SAS es más o menos un lenguaje de procedimiento (algo anticuado, pero los métodos de procesamiento de datos que usa manejan muy bien los datos de alto y / o n) – Todavía no es una herramienta de elección mía, aunque la he usado por necesidad con clientes durante muchos años). El trabajo que está atascado con SAS estará utilizando SAS como una herramienta todo en uno (con algunas raras excepciones, ya que se integra con otras herramientas y genera PMML)

Lo único que aprecio de Python, C ++ y Java es cómo juegan juntos y hacen cumplir la legibilidad del código. De estos tres, los que terminan con una producción más eficiente son generalmente los que requieren más tiempo de desarrollo.

R también tiene convenciones de estilo, pero la sintaxis no es perfecta. Y para que algunas operaciones sean más eficientes, instituirá una nueva función (es decir, apply ()) en lugar de usar convenciones de lenguaje estándar (para bucle). Dicho esto, su tiempo de desarrollo puede ser bastante corto en código en R. También se puede paralelizar, lanzar como un nodo en hadoop y ajustar fácilmente el rendimiento para la computación GPGPU. Trabajo en R cuando conozco los datos (que cumplen con los requisitos de escala y rendimiento) y necesito algo rápidamente (me da tiempo para implementar un modelo, pero mejorar el rendimiento en una segunda iteración en R o puerto en otro lugar: Py, C ++, Julia, JS , Java, etc.)

Como ingeniero eléctrico, quiero cambiar mi trayectoria profesional a una posición de análisis de datos donde pueda hacer modelos predictivos, pruebas estadísticas y validación de datos. He revisado los contenidos de diferentes cursos de Data Science como Coursera, certificaciones CAP o aprendizaje de aplicaciones Hadoop / SAS. El diluvio de información sin la orientación adecuada solo sirve para aumentar su confusión sobre la elección correcta.

Esta condición persistente de indecisión sobre mi carrera es frustrante.