|
Funzioni di riferimento CARICAMENTO PACCHETTO "library(tseries)" CARICAMENTO DATI x<-read.table("C:/Documents and Settings/Giuseppe/Desktop/importazioni di energia extra ue.txt",header=TRUE) indice<-x\$indice
ANALISI PRELIMINARE max(indice) min(indice) mean(indice) var(indice) length(indice)
RICONOSCIMENTO SERIE STORICA xt<-ts(indice,start=c(1993,1),frequency=12) is.ts(xt) xt
ANALISI GRAFICA plot(xt,ylab="importazioni di enegia",xlab="tempo",main="GRAFICO DELLA SERIE STORICA",lwd=1,lty=1,col="red") hist(indice,prob=TRUE,col="yellow")
CARICAMENTO PACCHETTO AST "library(ast)"
STIMA DEL TREND CON IL FILTRAGGIO xt.filt<-filter(xt,filter=rep(1/25,25)) xt.filt plot(xt.filt,main="TREND STIMATO CON MEDIA MOBILE",col="green")
SCOMPOSIZIONE MEDIANTE DIFFERENZIAZIONE xt.diff<-diff.ts(xt) xt.diff plot(xt.diff,main="GRAFICO DELLA SERIE STORICA DETRENDIZZATA",col="brown") xt.diff2<-diff.ts(xt.diff) plot(xt.diff2,main="GRAFICA DELLA SERIE STORICA DETRENDIZZATA 2",col="brown")
STIMA DEL TREND CON IL LIVELLAMENTO xt.hw<-HoltWinters(xt,seasonal="additive") xt.hw plot(xt.hw) prev<-predict(xt.hw,n.ahead=5) prev
DECOMPOSIZIONE DELLA SERIE STORICA CON DEC dec.fit<-decompose(xt,type="additive") stag.dec<-dec.fit\$seasonal trend.dec<-dec.fit\$trend res.dec<-dec.fit\$random plot(dec.fit)
DECOMPOSIZIONE DELLA SERIE STORICA CON STL stl.fit<-stl(xt,s.window="periodic") attributes(stl.fit) stag.stl<-stl.fit\$time.series[,1] trend.stl<-stl.fit\$time.series[,2] res.stl<-stl.fit\$time.series[,3] plot(stl.fit,main="GRAFICO DELLA SERIE STORICA DECOMPOSTA- funzione stl")
DECOMPOSIZIONE DELLA SERIE STORICA CON TSR library(ast) tsr.fit<-tsr(xt~poly(1)+c) plot(tsr.fit) plot(xt.filt) lines(trend(tsr.fit),col="red") tsr2.fit<-tsr(xt~loess(1,10)+c) plot(tsr2.fit) plot(xt.filt) lines(trend(tsr2.fit),col="blue") plot(trend(tsr2.fit),main="COMPARAZIONE DEL TREND STIMATO") lines(xt.filt,col="red") lines(trend.stl,col="green") trend.tsr<-trend(tsr2.fit) stag.tsr<-seasonal(tsr2.fit) res.tsr<-residuals(tsr2.fit)
LISCIAMENTO DELLA SERIE STORICA plot(xt,main="LISCIAMENTO DELLA SERIE STORICA") lines(smoothts(xt~lo(2,10)),col="red") lines(smoothts(xt~s(2)),col="blue") lines(smoothts(xt~p(2)),col="black")
VERIFICA SUL VALORE DELLA MEDIA DEGLI ERRORI media.residui<-mean(res.stl) media.residui n<-length(res.stl) n var.residui<-(n/(n-1))*var(res.stl) var.residui s<-sqrt(var.residui) s test<-(media.residui/(s/sqrt(n))) test.t pt(test.t,n-1,lower.tail=F) qt(0.99,n-1)
VERIFICA DELLA NORMALITA' stand<-function(x){m=mean(x) s=(var(x)^0.5) z=(x-m)/s return(z)} res.stand<-stand(res.stl) res.stand plot(res.stand,main="DIAGRAMMA DEI RESIDUI STANDARDIZZATI") abline(h=2.5) hist(res.stand,main="ISTOGRAMMA DEI RESIDUI STANDARDIZZATI",xlab="Residui",col="green") plot(density(res.stand,kernel="gaussian"),main="Distribuzione dei residui:lisciamento",col="green")
TEST DI SHAPIRO shapiro.test(res.stand)
TEST DI AUTOCORRELAZIONE acf(res.stand,main="Correlogramma dei residui",col="red")
PROCESSO STOCASTICO mean(res.stl) var(res.stl) acf(res.stl,type="correlation",plot=TRUE,main="CORRELOGRAMMA DELLA SERIE DEI RESIDUI",col="violet") acf(res.stl,type="covariance",plot=TRUE,main="GRAFICO DELLE AUTOCOVARIANZE",col="orange") acf(res.stl,type="correlation",plot=FALSE) pacf(res.stl,plot=TRUE,main="GRAFICO DELLE CORRELAZIONI PARZIALI",col="green") pacf(res.stl,plot=FALSE) ALCUNI MODELLI STOCASTICI 1) AR ar1<-arima.sim(n=170,list(order=c(1,1,0),ar=0.6)) ar1 plot(ar1,main="SIMULAZIONE DI UN PROCESSO AR(1)",col="blue") ar11<-arima.sim(n=170,list(ar=0.15,sd=sqrt(2.5))) ar11 plot(ar11,main="SIMULAZIONE DI UN PROCESSO AR(1)",col="brown") abline(h=2.5) abline(h=-2.5) ar2<-arima.sim(n=170,list(order=c(2,1,0),ar=c(0.5,0.4))) ar2 plot(ar2,main="SIMULAZIONE DI UN PROCESSO AR(2)") ar22<-arima.sim(n=170,list(ar=0.88,-0.49),sd=sqrt(0.15)) ar22 plot(ar22,main="SIMULAZIONE DI UN PROCESSO AR(2)") abline(h=0.15) abline(h=-0.15) 2) MA ma1<-arima.sim(n=170,list(order=c(0,1,1),ma=-0.7)) ma1 plot(ma1,main="SIMULAZIONE DI UN PROCESSO MA(1)",col="yellow") ma2<-arima.sim(n=170,list(order=c(0,1,2),ma=c(-0.9,0.3))) ma2 plot(ma2,main="SIMULAZIONE DI UN PROCESSO MA(2)",col="green") 3) ARIMA arima1<-arima.sim(n=170,list(order=c(1,1,1),ar=0.05,ma=0.3)) plot(arima1,main="SIMULAZIONE DI UN PROCESSO ARIMA(1,1,1)",col="red") STIMA DEI PARAMETRI 1) ar1fit<-arima(ar1,order=c(1,1,0),include.mean=FALSE) ar1fit tsdiag(ar1fit) ar22fit<-arima(ar22,order=c(2,1,0),include.mean=FALSE) ar22fit tsdiag(ar22fit)
2) fitma1<-arima(ma1,c(0,1,1)) fitma1 tsdiag(fitma1) 3) arimafit<-arima(arima1, order=c(1,1,1), include.mean=FALSE) arimafit tsdiag(arimafit)
Powered by AkoComment Tweaked Special Edition v.1.4.6 AkoComment © Copyright 2004 by Arthur Konze - www.mamboportal.com All right reserved |