Saltar al contenido

De MATLAB a R

Desde hace muchos años trabajo en MATLAB. Comencé en IDL, que es muy similar, pero luego fue necesario adaptarme al lenguaje de programación que usaban (y usan cada vez menos) en el que por aquel entonces era mi nuevo centro de trabajo.

MATLAB es un entorno muy potente para trabajar con grandes cantidades de datos. Puede usarse en Windows, Mac y Linux, aunque en alguna ocasión me he encontrado con alguna pequeña diferencia en las versiones de Windows y Mac, teniendo que hacer pequeñas adaptaciones a scripts que ya tenía hechos. En este blog he escrito varias entradas relacionadas con MATLAB, y hasta ahora no había sentido la necesidad de cambiar de lenguaje de programación (si es que a estos paquetes estadísticos donde trabajamos con scripts se le puede llamar «lenguaje de programación»). El caso es que MATLAB, frente a sus competidores, tiene algunas desventajas muy llamativas que me han invitado a probar con otros. La gran desventaja es que es de pago, con un precio muy elevado, mientras que otros como OCTAVE o R son gratuitos. Por otro lado, y esto puede ser ya cuestión de gustos personales, las gráficas y mapas que se generan con MATLAB me parecen horrendas. Otra desventaja es que puedes necesitar una toolbox en MATLAB que no tienes instalada, o que no existe en la versión que tú estás utilizando, y entonces empiezan los problemas. Un detalle más: guardar una gráfica de MATLAB como fichero gráfico no es más que esperar a que el propio programa haga una captura de pantalla, por lo que esa captura depende de la configuración de tu tarjeta de vídeo + pantalla. Generar una misma gráfica (o un mapa) con el mismo script pero en dos ordenadores distintos puede dar resultados diferentes. Eso me parece una chapuza.

Tomar una decisión sobre qué otro lenguaje usar no fue difícil, pues la tentación estaba muy cerca. Algunos de mis colegas ya se habían pasado hace tiempo a R. Me gusta el resultado de las salidas gráficas que consiguen. La sintaxis de este lenguaje no parece muy difícil si ya se está familiarizado con otros lenguajes. Además, es gratis, multiplataforma, y hay una gran comunidad de usuarios en internet. Traducir mis scripts de MATLAB a R me parece una pérdida de tiempo, pero tener que abordar un problema nuevo sí es una buena excusa para empezar en R. Este es el caso y por fin lo he instalado y estoy tratando de correr mis primeros programas. También instalé un IDE, el RStudio (también gratis y multiplataforma), para que el entorno me sea un poco más familiar y contar con unas cuantas funcionalidades interesantes.

R Studio

Pues eso, de la directora de «Me olvido de Windos y me paso a Linux» llega la nueva entrega «De MATLAB a R». ¡A ver en qué termina la película! 🙂

Publicado enDivulgación

12 comentarios

  1. Jheyns Arciria Jheyns Arciria

    amm por el momento no soy universitario ni nada, solo soy un chico al que le gusta la programación me gusta mucho y en estos momentos estoy trabajando con matlab para realizar algunos trabajos , no había tenido en cuenta los software que planteaste en tu entrada o para ser mas sincero no conocía la existencia de ellos por eso muchas gracias.. !! siempre se aprenden cosas nuevas 😉 saludos.. espero y sigas con tus publicaciones… :), y en cuanto a las gráficas si tienes toda la razón… 😀

  2. Jesus Polo Jesus Polo

    Estoy en tu misma situación; llevo muchos años usando Matlab y no me apetece pasar todos mis scripts a R, pero acabo de empezar con R y con RStudio. Entiendo bien el lenguaje de programacion de R, pero aun no me aclaro con como crear scripts y llamarlos desde otros directorios de trabajo y tal, vamos como hacía con Matlab que tenia mis propias toolboxes y las usaba llamando a funciones. Espero poder hacerme a esto del R en poco tiempo…

    • Hola Jesús. Yo estoy todavía con mis primeros pasitos, pero igual que tú, espero hacerme con él en poco tiempo. Hoy me estuve dando cabezazos para dibujar un mapa con unos puntos señalando localizaciones. 🙂 De todas formas, cuanto más lo miro más buena pinta tiene. Saludos!

  3. Nora Nora

    YO soy usuaria de R, sin embargo en la parte de procesos estocásticos los libros traen los còdigos de simulaciòn en MATLAB y pensè que instalando en R el package matlab los podrìa leer, sin embargo no es asì. Tenès algun consejo para darme??

    • Hola Nora. No conozco el paquete matlab para R. Solo conozco matlab como un software independiente. Si tienes códigos en matlab pero quieres ejecutarlos en un entorno de programación gratuito, yo te recomiendo que en vez de R uses Octave. Yo nunca he usado Octave pero tengo entendido que es un clon de Matlab y casi todos los códigos para Matlab te funcionarían en ese entorno.

      Saludos!

  4. Ernesto Ernesto

    Yo soy estudiante de matematicas en la universidad de la habana. Hasta hace muy poco usaba MATLAB para casi todo pero recientemente conoci el R y me llamo la atencion pero hasta ahi. No obstante, ahora estoy inmerso en mi trabajo investigativo final de la carrera, ya casi me graduo y …….SI NO ES POR EL R Y SUS PAQUETES DE ESTADISTICA TODAVIA ESTUVIERA PROGRAMANDO EN MATLAB LOS ESTIMADORES QUE NECESITO JAJAJ. Estoy de acuerdo contigo…..R Studio !!!!!

  5. Daniel Daniel

    Hola,

    Lo de «gratuito» pienso que no es un argumento a considerar para elegir un programa u otro. Hay que elegirlos en función de lo bien que te vayan (eficiencia y/o eficacia) para hacer lo que quieras/debas hacer con ellos. En caso de que el que te vaya mejor sea de pago, se lo puedes pedir a un amigo y ya está.

    Para según qué cosas, para el procesado de señales por ejemplo, creo que es mejor Matlab que RStudio. Todo depende de para qué quieras usar el programa.

    • Por supuesto, lo determinante para elegir es que el entorno sea el más eficiente para cada uno. Yo todavía uso MATLAB para muchísimas cosas. Vale la pena pagar por lo que nos sea más util.

      Saludos!

  6. David Castillo David Castillo

    Hola.
    Creo que una de las desventajas de R es que hay libros que hacen referencia o tienen un apartado para trabajar en Matlab,
    por ejemplo hay varios títulos de procesamiento digital de señales con Matlab o mecatrónica con Matlab o algo con Matlab
    Por lo menos acá en México no he encontrado títulos equivalentes para trabajar en R.
    Eso lleva a que quien empieza lo haga con Matlab y después conocer R

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Verificado por MonsterInsights