Exportar datos de MATLAB a Excel

Ammar Ali 20 junio 2023
  1. Exportar datos a un archivo de Excel usando la función writematrix() en MATLAB
  2. Exportar datos a un archivo de Excel usando la función writecell() en MATLAB
  3. Exportar datos a un archivo de Excel usando la función writetable() en MATLAB
Exportar datos de MATLAB a Excel

Este tutorial analizará la exportación de datos a un archivo de Excel utilizando las funciones writematrix(), writetable() y writecell() en MATLAB.

Exportar datos a un archivo de Excel usando la función writematrix() en MATLAB

La función writematrix() se utiliza para escribir una matriz en un archivo. Si los datos que queremos exportar están guardados en una matriz, podemos usar la función writematrix().

La función writematrix() tiene tres sintaxis que se muestran a continuación:

writematrix(data)
writematrix(data,file_name)
writematrix(___,Property_Name,Property_Value)

La primera sintaxis escribirá la matriz dada en un archivo de texto con la extensión .txt y usará una coma como delimitador para separar los elementos en una fila. La función writematrix() usará el nombre de la variable de matriz como el nombre del archivo de salida, y si la función no puede usar el nombre de la matriz, usará el nombre matrix.txt como el nombre del archivo.

Cada fila de la matriz de entrada se convertirá en una fila en el archivo de salida. Si el nombre del archivo ya existe, la función sobrescribirá los datos, lo que significa que los datos anteriores se perderán y se reemplazarán con los nuevos datos.

La segunda sintaxis se usa para establecer el nombre del archivo y su extensión. Podemos dar cualquier nombre al archivo de salida.

Podemos usar las extensiones de archivo .txt, .dat y .csv para guardar datos en un archivo de texto donde podemos agregar delimitadores. Podemos usar la extensión de archivo .xls, .xlsm y .xlsx para guardar datos en hojas de cálculo de un archivo de Excel.

Podemos usar la extensión de archivo .xlsb para guardar datos en una hoja de cálculo de Excel solo si el sistema admite el formato de archivo. Por ejemplo, escribamos una matriz en un archivo de hoja de cálculo.

Vea el código a continuación.

clc
clear

X = magic(3)
writematrix(X,'X.xls')

La última sintaxis cambia las propiedades de la función writematrix() utilizando el nombre y el valor de la propiedad.

Podemos usar la propiedad FileType para establecer el tipo de archivo en texto u hoja de cálculo. Podemos usar la propiedad DateLocale para establecer las configuraciones regionales utilizadas para escribir las fechas.

La propiedad DateLocale es útil cuando la matriz de entrada contiene valores DateTime, y podemos usarla para especificar el formato de la fecha en la que se almacenará en el archivo. Consulte este enlace para ver todos los formatos admitidos por la configuración regional que podemos usar para almacenar los valores de fecha.

Podemos usar la propiedad WriteMode para establecer el modo de escritura de datos. En el caso de archivos de texto, podemos cambiar el modo de escritura de sobrescribir, el modo predeterminado, a agregar, que agregará los nuevos datos a los datos previamente almacenados en el archivo.

En el caso de los archivos de Excel, el modo predeterminado se establece en inplace, que reemplazará los datos en el nuevo rango de datos. Por ejemplo, si los nuevos datos tienen cinco filas y 5 columnas, solo se reemplazarán las 5 filas y las 5 columnas del archivo, y el resto de los datos permanecerán igual.

Podemos usar el modo overwritesheet, que borrará la hoja especificada y escribirá nuevos datos en la hoja, y si no especificamos la hoja, se usará la primera hoja. Podemos usar el modo agregar, que agregará los nuevos datos al final de la hoja especificada, y si no especificamos el número de hoja, se usará la primera hoja.

Podemos usar el modo reemplazar archivo, que borra todas las hojas anteriores y escribe nuevos datos en la hoja especificada, y si no especificamos una hoja, se usará la primera hoja. Podemos usar la propiedad Delimiter para establecer el delimitador, que se establece en una coma en space para el delimitador de espacio, tab para el delimitador de tabulación, ; para el punto y coma, y | para la barra vertical.

Podemos usar la propiedad QuoteStrings para establecer el indicador utilizado para escribir texto citado en el archivo. El valor de esta propiedad puede ser mínimo, todos y ninguno.

El valor mínimo es el valor predeterminado y encerrará las variables que contengan comillas dobles, delimitadores y finales de línea con comillas dobles. El valor all incluirá todos los datos de fecha, categóricos y de texto entre comillas dobles.

El valor ninguno no encierra ninguna variable. Podemos usar la propiedad Codificación para cambiar el esquema utilizado para codificar caracteres, que está configurado en UTF-8 por defecto.

Podemos establecer la propiedad Codificación en ISO-8859-1, windows-1251 y windows-1252. Podemos usar la propiedad Hoja para especificar el número de hoja o el nombre que queremos usar para escribir datos, y puede ser un vector de caracteres o un número entero positivo.

Podemos usar la propiedad Rango para establecer el rango de las hojas de cálculo que queremos usar para escribir nuevos datos. El rango puede ser una sola hoja que especificará el punto de inicio, y también puede ser un rango como una hoja de formulario 5 a la hoja 10.

Podemos usar la propiedad UseExcel para configurar el inicio del software de Excel cuando escribimos datos en un archivo de Excel. De forma predeterminada, la propiedad se establece en falso, lo que significa que el software de Excel no se iniciará, pero también podemos establecerla en verdadero, lo que iniciará el software de Excel.

Por ejemplo, repitamos el ejemplo anterior y cambiemos algunas propiedades mencionadas anteriormente. Vea el código a continuación.

clc
clear

X = magic(3)
writematrix(X,'X.xls','Sheet',3)
m = readmatrix('X.xls','Sheet',3)

Producción :

X =

     8     1     6
     3     5     7
     4     9     2


m =

     8     1     6
     3     5     7
     4     9     2

En el código anterior, X es la matriz de entrada y m es la matriz guardada en el archivo de Excel. También podemos establecer otras propiedades de la misma manera que cambiamos las propiedades en el código anterior.

Consulte este enlace para obtener más detalles sobre la función writematrix().

Exportar datos a un archivo de Excel usando la función writecell() en MATLAB

La función writecell() se utiliza para escribir una celda en un archivo. Si los datos que queremos exportar están guardados en una celda, podemos usar la función writecell().

writecell() es lo mismo que la función writematrix(). La única diferencia es que la entrada de la función writecell() es una celda y la entrada de la función writematrix() es una matriz.

Las propiedades de estas funciones que podemos cambiar también son las mismas.

Por ejemplo, vamos a crear una celda y escribirla en un archivo de Excel. Vea el código a continuación.

clc
clear

X = {1,2,3}
writecell(X,'Y.xls')
c = readcell('Y.xls')

Producción :

X =

  1×3 cell array

    {[1]}    {[2]}    {[3]}


c =

  1×3 cell array

    {[1]}    {[2]}    {[3]}

En el resultado anterior, X es la celda de entrada y c es la celda que importamos del archivo guardado. Consulte este enlace para obtener más detalles sobre la función writecell().

Exportar datos a un archivo de Excel usando la función writetable() en MATLAB

La función writetable() se utiliza para escribir una tabla en un archivo. Si los datos que queremos exportar están guardados en una tabla, podemos usar la función writetable().

La función writetable() también es la misma que la función writematrix(); la única diferencia es que la entrada de la función writetable() es una tabla, y la entrada de la función writematrix() es una matriz. La función writetable() tiene algunas propiedades adicionales que podemos cambiar.

Podemos usar la propiedad WriteRowNames para configurar el indicador para escribir los nombres de las filas en el archivo de salida.

De forma predeterminada, la propiedad WriteRowNames se establece en falso, lo que significa que los nombres de fila de la tabla no se incluirán en el archivo de salida, pero podemos establecerlo en verdadero si queremos escribir nombres de fila en el archivo de salida. Podemos usar WriteVariableNames para establecer el indicador utilizado para escribir el nombre de los encabezados de columna de la tabla en el archivo de salida.

De forma predeterminada, la propiedad WriteVariableNames se establece en falso, lo que significa que los encabezados de columna de la tabla no se incluirán en el archivo de salida, pero podemos establecerlo en verdadero si queremos escribir encabezados de columna en el archivo de salida. Por ejemplo, creemos una tabla y escribámosla en un archivo de Excel.

Vea el código a continuación.

clc
clear

Z = table([1;5],[10;15])
writetable(Z,'Z.xls')
m = readtable('Z.xls')

Producción :

Z =

  2×2 table

    Var1    Var2
    ____    ____

     1       10
     5       15


m =

  2×2 table

    Var1    Var2
    ____    ____

     1       10
     5       15

En el resultado anterior, Z es la tabla de entrada y m es la tabla que importamos del archivo guardado. Consulte este enlace para obtener más detalles sobre la función writetable().

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Artículo relacionado - MATLAB Excel