• Saltar al contenido principal
  • Skip to secondary menu
  • Saltar a la barra lateral principal
  • Saltar al pie de página
  • Inicio
  • Secciones
    • Ciencia de datos
    • Criptografía
    • Herramientas
    • Machine Learning
    • Noticias
    • Opinión
    • Productividad
    • Programación
      • JavaScript
      • Julia
      • Matlab
      • Python
      • R
  • Programación
    • JavaScript
    • Julia
    • Matlab
    • Python
    • R
  • Noticias
  • Boletín
  • Contacto
  • Tienda
    • Libros
    • Equipamiento de oficina
    • Equipamiento en movilidad
    • Tiendas afiliadas
      • AliExpress
      • Amazon
      • Banggood
      • GeekBuying
      • Lenovo

Analytics Lane

Ciencia e ingeniería de datos aplicada

  • Ciencia de datos
  • Machine Learning
  • Python
  • Pandas
  • NumPy
  • Matlab
  • Julia
  • JavaScript
  • Excel

Guardar y leer archivos de texto con Matlab

mayo 29, 2019 Por Daniel Rodríguez Deja un comentario
Tiempo de lectura: 3 minutos

Los archivos más portables para el intercambio de datos son los de texto con los valores separados por un delimitador. Entre los que es posible destacar CSV (“Comma Separated Values”) o TSV (“Tab separated values”). Su popularidad es debida a que la mayoría de las bases de datos, hojas de cálculo y otras aplicaciones son capaces de leer y guardar los datos en este formato. Siendo lo más habitual encontrar los conjuntos de datos en este tipo de archivos. Por eso es importante saber cómo guardar y leer archivos de texto con Matlab.

Las funciones que se verán en esta entrada solamente funcionan con matrices numéricas. En el caso de que sea necesario trabajar con celdas es necesario actualizar a la versión 2019a de Matlab en las que se han definido nuevas funciones. En una futura entrada se explicarán las funciones para importar y exportar datos con Matlab 2019a.

El formato CSV

Para guardar y leer archivos de texto con Matlab en formato CSV existen dos funciones csvwrite() y csvread(). Tal como se puede deducir del nombre la primera permite guardar los datos en un archivo y la segunda guardarlos. A modo de ejemplo se puede crear un matriz aleatoria con rand(4) y guardar esta en un archivo con csvwrite().

data = rand(4);
csvwrite('data.csv', data);

Obteniendo así el siguiente archivo:

0.81472,0.63236,0.95751,0.95717
0.90579,0.09754,0.96489,0.48538
0.12699,0.2785,0.15761,0.80028
0.91338,0.54688,0.97059,0.14189

Una vez creado el archivo se pueden recuperar los datos en Matlab con csvread() simplemente indicando el nombre del mismo.

csv = csvread('data.csv');

En el archivo se puede ver que los valores son almacenados en formato corto, por lo que se pierde precisión. Algo que puede ser un problema en ciertas aplicaciones. Para solucionar este problema y utilizar otros separadores es necesario utilizar las funciones dlmwrite() y dlmread().

Publicidad


Funciones DLM

Las funciones dlmwrite() y dlmread() son más flexibles que las vistas en la sección anterior. Ya que permite cambiar el separador utilizado en el archivo y como la precisión. El funcionamiento básico es similar, en dlmwrite() solo hay que indicar el nombre del archivo y la matriz.

dlmwrite('data.csv', data);

En este caso se obtiene el mismo resultado que con csvwrite(). Para modificar el separador se puede utilizar la propiedad 'delimiter' seguida del carácter que se desea utilizar. Por otro lado, la propiedad con la que se fija la precisión es 'precision' seguida de la cual es necesario indicar el número de decimales. Por ejemplo, para emplear el punto y coma como separador de valores y trabajar con 9 decimales se puede escribir.

dlmwrite('data.csv', data, 'delimiter', ';', 'precision', 9);

Con lo que se obtiene el siguiente archivo:

0.814723686;0.632359246;0.957506835;0.957166948
0.905791937;0.097540405;0.964888535;0.485375649
0.126986816;0.278498219;0.157613082;0.800280469
0.913375856;0.546881519;0.970592782;0.141886339

De forma análoga a lo vista en la sección anterior la función par importar los datos es dlmread().

csv = dlmread('data.csv');

Generalmente no es necesario indicar el separador, pero en caso de duda se puede pasar como segundo parámetro.

Publicidad


csv = dlmread('data.csv', ';');

Consideraciones en Matlab 2019a y posteriores

En Matlab 2019a han sido introducidas cuatro nuevas funciones (writematrix(), readmatrix(), writecell() y readcell()) que permiten guardar matrices y celdas tanto en archivos de texto como en hojas de cálculo Microsoft Excel. Debido a su mayor flexibilidad estas son las funciones recomendadas para Matlab 2019a o posteriores. En el caso de trabajar con versiones anteriores es necesario continuar utilizando estas funciones.

Conclusiones

En esta entrada se han visto las funciones básicas para guardar y leer archivos de texto con Matlab. Unas funciones que son muy útiles cuando es necesario importar o exportar datos en este formato, uno de los más populares.

A partir de las versiones de Matlab del año 2019 se encuentran disponibles otras funciones para importar y exportar datos en formato de texto que ofrecen más posibilidades.

Imágenes: Pixabay (cocoparisienne)

¿Te ha parecido de utilidad el contenido?

¡Puntúalo entre una y cinco estrellas!

Puntuación promedio 0 / 5. Votos emitidos: 0

Ya que has encontrado útil este contenido...

¡Síguenos en redes sociales!

¡Siento que este contenido no te haya sido útil!

Publicidad


¡Déjame mejorar este contenido!

Dime, ¿cómo puedo mejorar este contenido?

Publicaciones relacionadas

  • Rutas de archivo en Matlab
    Rutas de archivo en Matlab
  • Versión web de la aplicación
    Creación de aplicaciones web con Matlab
  • Importar y exportar datos en Matlab 2019a
    Importar y exportar datos en Matlab 2019a
  • GUI en Matlab para cargar una matriz
    GUI en Matlab para cargar una matriz
  • Trabajar con archivos Excel en Matlab
    Trabajar con archivos Excel en Matlab
  • Migración de GUIDE a App Designer
    Migración de GUIDE a App Designer

Publicado en: Matlab

Interacciones con los lectores

Deja una respuesta Cancelar la respuesta

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

I accept the Terms and Conditions and the Privacy Policy

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

Publicidad




Barra lateral principal

Suscríbete a nuestro boletín

Suscríbete al boletín semanal para estar al día de todas las publicaciones.

Política de Privacidad

Analytics Lane en redes sociales

  • Amazon
  • Facebook
  • GitHub
  • Instagram
  • Pinterest
  • RSS
  • Twitter
  • Tumblr
  • YouTube

Publicidad

Entradas recientes

El método de Hare-Niemeyer y su implementación en Python

septiembre 29, 2023 Por Daniel Rodríguez

Redimensionar una partición de disco LVM con espacio no asignado en Linux

septiembre 27, 2023 Por Daniel Rodríguez

¿Cómo saber la versión de Pandas o cualquier otra librería en Python?

septiembre 25, 2023 Por Daniel Rodríguez

Publicidad

Es tendencia

  • ¿Cómo cambiar el nombre de las columnas en Pandas? publicado el mayo 6, 2019 | en Python
  • Seleccionar filas y columnas en Pandas con iloc y loc publicado el junio 21, 2019 | en Python
  • ¿Cómo eliminar columnas y filas en un dataframe pandas? publicado el marzo 25, 2019 | en Python
  • Archivos Guardar y leer archivos CSV con Python publicado el junio 15, 2018 | en Python
  • Instantáneas de VirtualBox (Snapshots) publicado el marzo 27, 2019 | en Herramientas

Publicidad

Lo mejor valorado

4.9 (22)

Seleccionar filas y columnas en Pandas con iloc y loc

4.7 (12)

Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas

4.6 (15)

Archivos JSON con Python: lectura y escritura

4.5 (10)

Diferencias entre var y let en JavaScript

4.3 (12)

Ordenación de diccionarios en Python mediante clave o valor

Publicidad

Comentarios recientes

  • Daniel Rodríguez en ¿Cómo eliminar columnas y filas en un dataframe pandas?
  • Miguel en ¿Cómo eliminar columnas y filas en un dataframe pandas?
  • alberto en Resolver problema de credenciales en Bitbucket
  • Pablo en Aplicar el método D’Hondt en Excel
  • Agapito en Creación de un EXE desde un archivo Python en Windows

Publicidad

Footer

Analytics Lane

  • Acerca de Analytics Lane
  • Boletín de noticias
  • Contacto
  • Libros
  • Lo más popular
  • Noticias
  • Tienda
  • Tiendas afiliadas

Secciones

  • Ciencia de datos
  • Criptografía
  • Herramientas
  • Machine Learning
  • Opinión
  • Productividad
  • Programación
  • Reseñas

Sobre de Analytics Lane

En Analytics Lane tratamos de explicar los principales conceptos de la ciencia e ingeniería de datos con un enfoque práctico. Los principales temas tratados son ciencia de datos, ingeniería de datos, inteligencia artificial, machine learning, deep learning y criptografía. Además, también se habla de los principales lenguajes de programación y herramientas utilizadas por los científicos e ingenieros de datos.

Copyright © 2018-2023 Analytics Lane ·Términos y condiciones ·Política de Cookies ·Política de Privacidad ·Herramientas de privacidad ·Contacto