Alternativas a MATLAB: Python

Python es un lenguaje de programación sencillo y práctico, que te permite trabajar con mayor rapidez e integrar sistemas con mayor eficacia. Puedes aprender a usar Python y obtener beneficios casi inmediatos en la productividad y reducir los costes de licencia ya que es gratuito. Por todo ello Python se está convirtiendo (si no lo es ya) en una de las alternativas principales a la hora de remplazar a otros lenguajes de programación como MATLAB.

print("Hola mundo!")

¿Por qué Python?

Podemos resumir las ventajas de Python en los siguientes puntos:

  • Software libre y gratuito (con licencia BSD que son permisivas para empresas)
  • Es multiplataforma (Windows, MacOS y Linux)
  • Lenguaje de alto nivel conveniente para un desarrollo rápido
  • Su filosofía enfatiza la simplicidad y legibilidad de código
  • Posee núcleo de lenguaje relativamente pequeño con el apoyo de magníficas librerías (NumPy, SciPy, scikit-learn, pandas, IPython-Jupyter, matplotlib etc.)
  • Multiparadigma: varios estilos de programación son compatibles (imperativo, orientado a objetos, funcional)
  • Integración con C/C++/Fortran y R
  • Amplio espectro de programadores (ocasional <> desarrolladores)
  • Comunidad grande (científica también) y activa (PyCon, SciPy, EuroPython, PyData…)

Parece interesante, ¿cómo empiezo?

Una de los problemas y virtudes de Python es que se usa en muchísimos campos y, por tanto, si alguien quiere empezar la cantidad de información puede llegar a ser problemática. Así que primero busca (¡o pregunta!) si tus tareas habituales las puedes hacer con Python. Por ejemplo, nosotros demostramos que podíamos realizar los ejercicios formación en Ingeniería Química con Python y sus bibliotecas:

El uso de Python en Ingeniería Química (vídeo)

Para la instalación de Python, la distribución más interesante en estos momentos, seas científico o no, es Anaconda (http://continuum.io/anaconda); que es igual tanto para los usuarios de Windows, OS X e incluso para las distribuciones de Linux que tienen gestores de paquetes decentes. En general, es lo más parecido a instalar MATLAB (pero gratis y open source), ya que instalas todos los paquetes y puedes ponerte a trabajar 🙂

De hecho, Anaconda incluye un  IDE por defecto tipo MATLAB llamado Spyder:

spyder-windows

Si vienes de MATLAB, Spyder es el entorno de programación (IDE por sus siglas en inglés) que te resultará más cómodo.

Pero una de las cosas más interesantes  es IPython Notebook (Jupyter) que ahora incluye widgets para poder variar parámetros de forma muy sencilla.

Demo de la revista Nature de los widgets interactivos de IPython Notebook (Jupyter)

En general, aprender Python requiere un poco más de esfuerzo ya que dependes de otras librerías. Pero es que con MATLAB (comercial) cada cosa nueva que quieres hacer te toca adquirir la licencia del toolbox correspondiente lo cual limita bastante a no ser que tú u tu empresa tengáis recursos infinitos.

Nosotros recomendamos dos materiales para aprender Python si se viene de MATLAB y no morir en el intento:

– El “curso” online que realizamos con Pybonacci (deberías pasarte por su blog para que veas todo lo que se puede hacer con Python)

aprender-python-ciencia-ingenieria

Vídeos para aprender Python científico
– Y Software Carpentry:

Software Carpentry

Por último, una vez nos sentimos cómodos esta tabla viene muy bien para imitar la forma de trabajar en la que estamos acostumbrados en MATLAB:

Chuleta: de MATLAB a Python

Ya estás listo para empezar, si tienes alguna duda puedes preguntarlo en la comunidad de Python para ingenieros que tenemos en Google+.

Actualización: Hemos escrito más cosas sobre Python desde que se publicó esta entrada, para saber más: +Python

Tags:

Trackbacks/Pingbacks

  1. Python para ingenieros - CAChemE - 9 julio, 2013

    […] empieza a ser una alternativa real para muchas de las funciones de MATLAB. Ya hemos hablado de las opciones para sustituir MATLAB y cómo Python es posiblemente la mejor alternativa a […]

  2. Descubre Python en 30 minutos - Podcast #1 - CAChemE - 30 octubre, 2013

    […] ¿Qué es eso de Python? […]

  3. Análisis de la PyConES (track científico) - CAChemE's podcast #3 - CAChemE - 21 diciembre, 2013

    […] ¿Qué es eso de Python? […]

  4. Python para usuarios de MATLAB - CAChemE - 16 enero, 2015

    […] Cómo y por qué empezar con Python […]

  5. Análisis PyData London y Curso de Python Científico 2014 - CAChemE - 24 febrero, 2015

    […] Qué es eso de Python, yo sólo conozco MATLAB. […]

Deja un comentario