clear all clc close all %% leer datos datos=csvread('mp10inde.txt'); nox=datos(:,3); tiempo=num2str(datos(:,1)); %pasa de numero a string para poder guardar mas facil las fechas tiempito=num2str(datos(:,2)); %pasa las horas a string agno=tiempo(:,1:2); %asi puedo ver que el año son los dos primeros (sin pasarlo a string es imposible) mes=tiempo(:,3:4); dia=tiempo(:,5:6); hora=tiempito(:,1:2); minuto=tiempito(:,3:4); %lo mismo %%Para crear vector de fechas for i=1:length(agno); aa=str2num(agno(i,:)); mm=str2num(mes(i,:)); dd=str2num(dia(i,:)); hh=str2num(hora(i,:)); if isempty(hh)==1 hh=0; else hh=hh; end MM=str2num(minuto(i,:)); fechas(i,1)=datenum(aa+2000,mm,dd,hh,MM,0); %creo vector de fechas en formato matlab end %% graficar serie de tiempo figure(1) plot(fechas,nox) datetick %datetick es para que se vean bonitas las fechas en formato matlab xlabel('2017') ylabel('NOx [ppb]') %% graficar histograma bines=[0:10:1000]; %los bines del histograma figure(2) histogram(nox,bines) xlabel('NOx') ylabel('Frecuencia') %% sacar ciclo diurno y estacional %ordeno los datos para hacer bloxplot %para el ciclo diario tiene que quedarme de nx24 %para el ciclo estacional tiene que quedarme de nx12 fechavec=datevec(fechas); box_estacional=NaN(31*24*7,12); box_diario=NaN(24*366*7,24); %ciclo estacional for i=1:12 aux=find(fechavec(:,2)==i); box_estacional(1:length(aux),i)=nox(aux); end clear aux %ciclo diurno c=0; for i=0:23 c=c+1; aux=find(fechavec(:,4)==i); box_diario(1:length(aux),c)=nox(aux); end %boxplot ciclo_diurno