# setwd("c:/discod/didattica/serie storiche/ss2627/esercitazioni_R/esercitazione_1/") # carico libreria "sse" source("c:/discod/didattica/serie storiche/sse_v5.txt") ############## ESEMPIO 2 - Il numero di server internet ############### y0=scan("figura2-4.txt") y=y0/(10^6) # coś sono espresse in milioni di unità plot(y,type="l", main="serie originaria") ly=log(y) plot(ly,type="l", main="serie logaritmica") n=length(y) tempo=seq(1,n,1) # t # apro finestra grafica doppia # x11(width=8,height=8) # par(mfrow=c(2,1),mai=c(0.8,0.8,0.6,0.6)) ######################################### ### modello moltiplicativo linearizzato ######################################### fit1=lm(ly~1+tempo) summary(fit1) # grafico valori stimati e residui plot(ly,type="l") lines(fit1$fitted, col="red") # valori stimati plot(fit1$resid, type="l") # residui abline(h=0, col="red") # grafico valori stimati (serie logaritmica e originaria) plot(ly,type="l", xlab="t", ylab="log(y)") lines(fit1$fitted, col="red") # valori stimati # passo considero l'esponenziale delle stime plot(y,type="l", xlab="t",) lines(exp(fit1$fitted), col="red") # valori stimati res1=y-exp(fit1$fitted) plot(res1,type="l") ######################################### ### modello additivo non lineare ######################################### nlmod=nls(y ~ a0 *exp(a1*tempo), start = list(a0 = 10, a1 = 0.5)) summary(nlmod) #nlmod2=nls(y ~ a0 *exp(a1*tempo)) #selfStart(model, initial, parameters, template) coeff=coef(nlmod) res=resid(nlmod) stimati=fitted(nlmod) #y-res plot(y,type="l") lines(stimati,col="red") plot(res, type="l") abline(h=0, col="red") plot(res1, type="l", xlab="t", ylab="residui dei modelli") lines(res, lty=2, col="red")