# Usa  Change dir  o  setwd("C:/...")  per posizionarti nella cartella del tuo
# PC in cui eventualmente hai il file, o, al posto della riga che segue, usa
# readLines("http://macosa.dima.unige.it/om/prg/stf/pioggia.txt",n=3)
readLines("pioggia.txt",n=3)
[1] "# mm mensili di pioggia a Genova nel periodo 1984-92; fanne le medie mobili"
[2] " 1,41 "                                              
[3] " 2,44 "                                              
read.table("pioggia.txt",sep=",",skip=1, nrows=2)
  V1 V2
1  1 41
2  2 44
piog <- read.table("pioggia.txt",sep=",",skip=1)
dim(piog)
[1] 108   2
n <- dim(piog)[1]; n
[1] 108
x <- piog$V1; y <- piog$V2
c(min(x),max(x), min(y),max(y))
[1]   1 108   0 423
plot(x,y, ylim=c(0,430),col="blue",xlab="",ylab="")
abline(h=seq(0,450,50),v=seq(0+1/2,108+1/2,12),lty=3,col="grey50")
lines(x,y,col="red")

# Ecco come approssimare i dati con le medie mobili (di ordine 3) delle y
y1 <- y[1]
for ( i in 2:(n-1) ) y1[i] <- (y[i-1]+y[i]+y[i+1])/3
y1 <- c(y1,y[n])
max(y1)
[1] 230
plot(x,y1, ylim=c(0,230),col="blue",xlab="",ylab="")
abline(h=seq(0,230,50),v=seq(0+1/2,108+1/2,12),lty=3,col="grey50")
lines(x,y1,col="red")

# Sopra il grafico dei nuovi dati e quello riferito ai seguenti,
# ottenuti con una successiva applicazione delle medie mobili.
y2 <- y[1]
for ( i in 2:(n-1) ) y2[i] <- (y1[i-1]+y1[i]+y1[i+1])/3
y2 <- c(y2,y[n])
max(y2)
[1] 204.7778
plot(x,y2, ylim=c(0,210),col="blue",xlab="",ylab="")
abline(h=seq(0,210,50),v=seq(0+1/2,108+1/2,12),lty=3,col="grey50")
lines(x,y2,col="red")