Versiones de archivos MAT
Visión general de las versiones de archivos MAT
Los archivos MAT son archivos de MATLAB® binarios que almacenan variables del espacio de trabajo. A partir de la versión 4 de los archivos MAT, hay varias versiones posteriores de archivos MAT que admiten un conjunto cada vez mayor de funcionalidades. Las versiones de MATLAB R2006b y posteriores admiten todas las versiones de archivos MAT.
Por defecto, todas las operaciones de guardado crean archivos MAT de la versión 7. La única excepción es cuando se crean nuevos archivos MAT usando la función matfile
. En este caso, la versión del archivo MAT por defecto es la 7.3.
Para identificar o cambiar la versión predeterminada del archivo MAT, acceda a las preferencias de los archivos MAT.
En la pestaña Home, en la sección Environment, haga clic en Preferences.
Seleccione MATLAB > General > MAT-Files.
Las preferencias se aplican a la función save
y a las opciones del menú Save.
El tamaño máximo de un archivo MAT viene impuesto solo por el sistema de archivos nativo.
Esta tabla muestra y compara todas las versiones de los archivos MAT.
Versión de archivo MAT | Versiones de MATLAB admitidas | Funcionalidades admitidas | Compresión | Tamaño máximo de cada variable | Valor del argumento version en la función save | Opción de preferencia |
---|---|---|---|---|---|---|
Versión 7.3 | R2006b (versión 7.3) o posterior | Guardar y cargar fragmentos de variables y todas las funcionalidades de la versión 7 | Sí (valor predeterminado) | ≥2 GB en ordenadores de 64 bits | '-v7.3' | MATLAB Version 7.3 or later (save -v7.3) |
Versión 7 | R14 (versión 7.0) o posterior | Cifrado de caracteres Unicode®, que permite compartir archivos entre sistemas que utilizan diferentes esquemas de cifrado de caracteres predeterminados y todas las funcionalidades de la versión 6. | Sí (valor predeterminado) | 2^31 bytes por variable | '-v7' | MATLAB Version 7 or later (save -v7) |
Versión 6 | R8 (versión 5) o posterior | Arreglos de n dimensiones, arreglos de celdas, arreglos de estructura, nombres de variables de más de 19 caracteres y todas las funcionalidades de la versión 4. | No | 2^31 bytes por variable | '-v6' | MATLAB Version 5 or later (save -v6) |
Versión 4 | Todas | Arreglos | No | 100.000.000 elementos por arreglo y 2^31 bytes por variable | '-v4' | n/d |
Nota
Los archivos MAT de la versión 7.3 utilizan un formato basado en HDF5 que requiere cierto almacenamiento adicional para describir el contenido del archivo. Para los arreglos de celdas, arreglos de estructura u otros contenedores que pueden almacenar tipos de datos heterogéneos, los archivos MAT de la versión 7.3 son a veces más grandes que los archivos MAT de la versión 7.
Guardar en una versión no predeterminada de archivo MAT
Guarde en una versión de archivo MAT distinta a la versión predeterminada cuando desee:
Permitir el acceso al archivo usando versiones anteriores de MATLAB.
Aprovechar las funcionalidades del archivo MAT de la versión 7.3.
Reducir el tiempo necesario para cargar y guardar algunos archivos almacenando datos sin comprimir.
Reducir el tamaño de algunos archivos almacenando datos comprimidos.
Para guardar en una versión de archivo MAT distinta a la versión predeterminada, especifique una version
como la última entrada para la función save
. Por ejemplo, para crear un archivo MAT de la versión 6 llamado myfile.mat
, escriba:
save('myfile.mat','-v6')
Compresión de datos
A partir de la versión 7, MATLAB comprime los datos al escribir en los archivos MAT para ahorrar espacio de almacenamiento. La compresión y descompresión de datos ralentiza todas las operaciones de guardado y algunas de carga. En la mayoría de los casos, la reducción del tamaño del archivo merece el tiempo adicional empleado.
En algunos casos, cargar datos comprimidos puede ser más rápido que cargar datos sin comprimir. Por ejemplo, considere un bloque de datos en un arreglo numérico guardado tanto en un archivo comprimido de 10 MB como en un archivo sin comprimir de 100 MB. Cargar los primeros 10 MB tarda el mismo tiempo en cada archivo. Cargar los 90 MB restantes del archivo descomprimido tarda nueve veces más tiempo que cargar los primeros 10 MB. Completar la carga del archivo comprimido solo requiere un tiempo relativamente corto para descomprimir los datos.
Las ventajas de la compresión de datos son insignificantes en los siguientes casos:
La cantidad de datos de cada elemento es pequeña en relación con la complejidad de su contenedor. Por ejemplo, los arreglos numéricos simples tardan menos tiempo en comprimirse y descomprimirse que los arreglos de celdas o estructura del mismo tamaño. La compresión de arreglos que dan como resultado un tamaño de archivo sin comprimir inferior a 3 MB ofrece una ventaja limitada, a menos que se transfieran datos a través de una red.
Los datos son aleatorios, sin patrones repetidos ni valores constantes.
Acelerar las operaciones de guardado y carga en los archivos MAT de la versión 7.3
Los archivos MAT de la versión 7.3 utilizan un formato basado en HDF5 que almacena los datos en fragmentos comprimidos. El tiempo necesario para cargar parte de una variable de un archivo MAT de la versión 7.3 depende de cómo se almacenen los datos en uno o más fragmentos. Cada fragmento que contenga cualquier porción de los datos que quiera cargar debe estar completamente descomprimido para acceder a los datos. Volver a fragmentar los datos puede mejorar el rendimiento de la operación de carga. Para volver a fragmentarlos, utilice las herramientas de línea de comandos de HDF5, que forman parte de la distribución de HDF5.