Importando y Exportando Datos
Mientras trabajamos en Matlab, todo el espacio de trabajo se encuentra guardado en la memoria RAM del computador, por lo que al cerrar el programa toda esa memoria es liberada y la información eliminada.
Matlab puede guardar el espacio de trabajo u objetos particulares en diversos formatos.
El formato nativo de Matlab es .mat
.
save nombre_archivo
guarda todos los objetos del espacio de trabajo en el archivonombre_archivo.mat
.save nombre_archivo A B C ...
guarda los objetosA
,B
yC
(...) del espacio de trabajo en el archivonombre_archivo.mat
.
Nota: Todos los archivos serán guardados en el directorio de trabajo.
load nombre_archivo
carga todos los objetos guardados en el archivonombre_archivo.mat
en el espacio de trabajo.
clear all;
A = rand(2,2);
B = rand(5,5);
save matrices;
save matA A;
clear all;
load matrices;
whos;
Name Size Bytes Class Attributes
A 2x2 32 double
B 5x5 200 double
clear all;
load matA;
whos;
Name Size Bytes Class Attributes
A 2x2 32 double
Existen situaciones en que es útil guardar la información en archivos de texto (txt
).
save nombre_archivo.txt A -ascii
guarda el objetoA
en el archivonombre_archivo.txt
.load nombre_archivo.txt
carga el objeto guardado en el archivonombre_archivo.txt
en el espacio de trabajo.
Alternativamente se puede usar también:
dlmwrite('nombre_archivo.txt',variable)
guarda el objetovariable
.variable = importdata('nombre_archivo.txt')
carga el objeto y lo guarda en el espacio de trabajo comovariable
.
A modelo de ejemplo vamos a crear una matriz de tamaño $100 \times 5$ con números aleatorios extraídos de una distribución normal con media 100 y varianza 25) y los guardaremos en formato txt.
datos = 100 + 5*randn(100,5);
save datos.txt datos -ascii;
Matlab también es capaz de guardar y leer datos desde Excel.
xlswrite('nombre_archivo.xls',variable)
guarda el objetovariable
en el archivonombre_archivo.xls
.variable = xlsread('nombre_archivo.xls')
carga el objeto y lo guarda en el espacio de trabajo comovariable
.
Al importartar datos de Excel es también posible definir la hoja y el rango específicos de los cuales los datos serán importados.
data = xlsread('nombre_archivo.xls','sheet','range')
consheet
el nombre de de la hoja de cálculo yrange
el rango de datos (ejemplo A1:C4).
Por ejemplo, importemos información sobre el PIB de Chile.
datos = xlsread('PIBChile.xlsx','Datos','A2:B57');
tiempo = datos(:,1);
pib = datos(:,2);
plot(tiempo,pib);
title('PIB Real de Chile');
ylabel('Miles de Millones de Pesos Encadenados');
xlabel('Año');
set(gca,'FontSize',8);
Ahora computemos la tasa de crecimiento:
T = length(pib);
g = ((pib(2:T,1) - pib(1:T-1,1))./pib(1:T-1,1))*100;
plot(tiempo(2:T),g);
title('Crecimiento del PIB Real de Chile');
ylabel('Porcentaje');
xlabel('Año');
set(gca,'FontSize',8);
crecprom = mean(g)
crecprom =
4.1616