ambo <- function(giocata,estrazioni,puntata) { o1 <- 0 o2 <- c() o3 <- c() o4 <- c() for(i1 in 1:length(estrazioni[,1])) { v <- c() for(i2 in 1:length(giocata[,1])) { n <- 0 for(i3 in 1:length(giocata[1,])) for(i4 in 1:length(estrazioni[1,])) if(giocata[i2,i3]==estrazioni[i1,i4]) n <- n+1 v <- c(v,n) } t<-0 for(i5 in 2:length(estrazioni[1,])) t <- t + puntata * 250 * (i5*(i5-1)/2) * sum(as.numeric(v==i5)) / (length(giocata[1,]) * (length(giocata[1,])-1) / 2) o1 <- o1 + (-puntata)*length(giocata[,1]) + t o2 <- c(o2, t) o3 <- c(o3, o1) o4 <- c(o4, sum(as.numeric(v==2)) + 3*sum(as.numeric(v==3)) + 6*sum(as.numeric(v==4)) + 10*sum(as.numeric(v==5)) ) #bilancio <- bilancio + (-puntata)*length(giocata[,1]) + puntata * 16.6 * sum(as.numeric(v==2)) } list(bilancio=o1, estrazioni=length(estrazioni[,1]), vincita=o2, andamento=o3, ambi=o4) } #Il file storico.txt puņ essere scaricato da qui: #http://www.lottomaticaitalia.it/lotto/doc/archivio/storico.zip db<-read.table("storico.txt", header = F, sep = "\t") db$anno<-substr(db$V1,0,4) db$ruota<-db$V2 sistemaA<-t(matrix(c(4,2,6,11,9,13,4,1,5,11,8,12,4,3,7,11,10,14,2,1,3,9,8,10,5,2,7,12,9,14,6,1,7,13,8,14,5,3,6,12,10,13),nc=7)) bilancio<-200000 t<-subset(db,db$ruota=="RM" & db$anno==1983) estrazioni<-matrix(c(t$V3,t$V4,t$V5,t$V6,t$V7),nc=5) a<-ambo(sistemaA, estrazioni, 1000) jpeg(paste("Roma1983.jpg",sep=""),width=600,height=400,units="px", quality=100,antialias="cleartype") par(oma=c(0,0,0,0), mar=c(0,0,0,0)) plot( c(0,a$estrazioni,0,a$estrazioni),c(min(0,bilancio+min(a$andamento)),min(0,bilancio+min(a$andamento)),bilancio+max(0,a$andamento),bilancio+max(0,a$andamento)),type="n",axes=F,lwd=4,col="darkred",xlab="",ylab="",main=paste("",sep="")) points(c(bilancio,a$andamento+bilancio),type="l",lwd=3,col="darkred") axis(2, at = c(min(0,bilancio+min(a$andamento)),bilancio+max(a$andamento)), lwd=3, pos=0, labels=F) axis(1, at = c(0,a$estrazioni*10), pos=0, lwd=3, labels=F) segments(0,bilancio,1000,bilancio,lty=2) text(3,bilancio,"200000",adj=0,pos=3) bilancio<-bilancio+a$bilancio segments(0,bilancio,1000,bilancio,lty=2) text(3,bilancio,bilancio,adj=0,pos=3) dev.off() t<-subset(db,db$ruota=="RM" & db$anno==1984) estrazioni<-matrix(c(t$V3,t$V4,t$V5,t$V6,t$V7),nc=5) a<-ambo(sistemaA, estrazioni, 1000) jpeg(paste("Roma1984.jpg",sep=""),width=600,height=400,units="px", quality=100,antialias="cleartype") par(oma=c(0,0,0,0), mar=c(0,0,0,0)) plot( c(0,a$estrazioni,0,a$estrazioni),c(min(0,bilancio+min(a$andamento)),min(0,bilancio+min(a$andamento)),bilancio+max(0,a$andamento),bilancio+max(0,a$andamento)),type="n",axes=F,lwd=4,col="darkred",xlab="",ylab="",main=paste("",sep="")) points(c(bilancio,a$andamento+bilancio),type="l",lwd=3,col="darkred") axis(2, at = c(min(0,bilancio+min(a$andamento)),bilancio+max(a$andamento)), lwd=3, pos=0, labels=F) axis(1, at = c(0,a$estrazioni*10), pos=0, lwd=3, labels=F) segments(0,bilancio,1000,bilancio,lty=2) text(3,bilancio,round(bilancio),adj=0,pos=3) bilancio<-bilancio+a$bilancio segments(0,bilancio,1000,bilancio,lty=2) text(3,bilancio,round(bilancio),adj=0,pos=3) dev.off() bilancio <- 200000 t<-subset(db,db$ruota=="TO" & db$anno==1983) estrazioni<-matrix(c(t$V3,t$V4,t$V5,t$V6,t$V7),nc=5) a<-ambo(sistemaA, estrazioni, 1000) jpeg(paste("Torino1983.jpg",sep=""),width=600,height=400,units="px", quality=100,antialias="cleartype") par(oma=c(0,0,0,0), mar=c(0,0,0,0)) plot( c(0,a$estrazioni,0,a$estrazioni),c(min(0,bilancio+min(a$andamento)),min(0,bilancio+min(a$andamento)),bilancio+max(0,a$andamento),bilancio+max(0,a$andamento)),type="n",axes=F,lwd=4,col="darkred",xlab="",ylab="",main=paste("",sep="")) points(c(bilancio,a$andamento+bilancio),type="l",lwd=3,col="darkred") axis(2, at = c(min(0,bilancio+min(a$andamento)),bilancio+max(a$andamento)), lwd=3, pos=0, labels=F) axis(1, at = c(0,a$estrazioni*10), pos=0, lwd=3, labels=F) segments(0,bilancio,1000,bilancio,lty=2) text(3,bilancio,"200000",adj=0,pos=3) bilancio<-bilancio+a$bilancio segments(0,bilancio,1000,bilancio,lty=2) text(3,bilancio,round(bilancio),adj=0,pos=3) dev.off() t<-subset(db,db$ruota=="TO" & db$anno==1984) estrazioni<-matrix(c(t$V3,t$V4,t$V5,t$V6,t$V7),nc=5) a<-ambo(sistemaA, estrazioni, 1000) jpeg(paste("Torino1984.jpg",sep=""),width=600,height=400,units="px", quality=100,antialias="cleartype") par(oma=c(0,0,0,0), mar=c(0,0,0,0)) plot( c(0,a$estrazioni,0,a$estrazioni),c(min(0,bilancio+min(a$andamento)),min(0,bilancio+min(a$andamento)),bilancio+max(0,a$andamento),bilancio+max(0,a$andamento)),type="n",axes=F,lwd=4,col="darkred",xlab="",ylab="",main=paste("",sep="")) points(c(bilancio,a$andamento+bilancio),type="l",lwd=3,col="darkred") axis(2, at = c(min(0,bilancio+min(a$andamento)),bilancio+max(a$andamento)), lwd=3, pos=0, labels=F) axis(1, at = c(0,a$estrazioni*10), pos=0, lwd=3, labels=F) segments(0,bilancio,1000,bilancio,lty=2) text(3,bilancio,round(bilancio),adj=0,pos=3) bilancio<-bilancio+a$bilancio segments(0,bilancio,1000,bilancio,lty=2) text(3,bilancio,round(bilancio),adj=0,pos=3) dev.off() t<-subset(db,db$ruota=="TO" & db$anno>1984) estrazioni<-matrix(c(t$V3,t$V4,t$V5,t$V6,t$V7),nc=5) a<-ambo(sistemaA, estrazioni, 1000) jpeg(paste("Torino1985-2013.jpg",sep=""),width=600,height=400,units="px", quality=100,antialias="cleartype") par(oma=c(0,0,0,0), mar=c(0,0,0,0)) plot( c(0,a$estrazioni,0,a$estrazioni),c(min(0,bilancio+min(a$andamento)),min(0,bilancio+min(a$andamento)),bilancio+max(0,a$andamento),bilancio+max(0,a$andamento)),type="n",axes=F,lwd=4,col="darkred",xlab="",ylab="",main=paste("",sep="")) points(c(bilancio,a$andamento+bilancio),type="l",lwd=1,col="darkred") axis(2, at = c(min(0,bilancio+min(a$andamento)),bilancio+max(a$andamento)), lwd=3, pos=0, labels=F) axis(1, at = c(0,a$estrazioni*10), pos=0, lwd=3, labels=F) segments(0,bilancio,a$estrazioni*10,bilancio,lty=2) #text(3,bilancio,round(bilancio),adj=0,pos=3) bilancio<-bilancio+a$bilancio segments(0,bilancio,a$estrazioni*10,bilancio,lty=2) text(200,bilancio,round(bilancio),adj=0,pos=3) dev.off() t1<-c() for(i in levels(db$ruota)) { t<-subset(db,db$ruota==i & db$anno>1982) estrazioni<-matrix(c(t$V3,t$V4,t$V5,t$V6,t$V7),nc=5) a<-ambo(sistemaA, estrazioni, 1000) t1<-c(t1,a$bilancio) } data.frame(levels(db$ruota),t1)