Vendredi, dans mon billet “le prix de l’essence en cas de pénurie“, j’essayais de visualiser l’explosion du prix de l’essence dans certaines stations services, ces dernières semaines. Mais plus généralement, on peut se demander où ont été observées les fortes hausses.
A partir de la base téléchargeable sur http://www.prix-carburants.economie.gouv.fr/, il est possible de récupérer les informations les prix, par jour, dans toutes les stations essence de France. Pour ça, on utilise la fonction suivante,
> spatial=function(dt){
+ base=NULL
+ for(no in 1:length(l)){
+ prix=list()
+ date=list()
+ j=0
+ for(i in 1:length(l[[no]])){
+ v=names(l[[no]])
+ if(!is.null(v[i])){
+ if(v[i]=="prix"){
+ j=j+1
+ date[[j]]=as.character(l[[no]][[i]]["maj"])
+ }}
+ }
+ n=j
+ D=as.Date(substr(unlist(date),1,10),"%Y-%m-%d")
+ k=which(D==D[which.max(D[D<=dt])])
+ if(length(k)>0){
+ B=Vectorize(function(i) l[[no]][[k[i]]])
+ (1:length(k))
+ if("nom" %in% rownames(B)){
+ k=which(B["nom",]=="Gazole")
+ prix=as.numeric(B["valeur",k])/1000
+ if(length(prix)==0) prix=NA
+ base1=data.frame(indice=no,
+ lat=as.numeric(l[[no]]$.attrs["latitude"])
+ /100000,
+ lon=as.numeric(l[[no]]$.attrs["longitude"])
+ /100000,
+ gaz=prix,
+ cp=l[[no]]$.attrs["cp"])
+ base=rbind(base,base1)
+ }}}
+ return(base)}
Par exemple, on peut récupérer les prix fin mai
> B1=spatial(as.Date("2016-05-31"))
et début mai,
> B2=spatial(as.Date("2016-05-01"))
En fusionnant ces deux bases, on peut récupérer la variation du prix, sur un mois,
> names(B1)=c("indice","lat","long","fin","cp")
> names(B2)=c("indice","lat","long","debut","cp")
> B=merge(B1,B2)
> B$var=(B$fin-B$debut)/B$debut*100
Plus particulièrement, on va s’intéresser aux stations dans lesquelles le prix a augmenté de plus de 10%,
> idx=which((B$lon>(-10))&(B$lon<20)&
+ (B$lat>35)&(B$lat<55))
> B=B[idx,]
> B=B[!is.na(B$var),]
> B$Y=(B$var>10)*1
Notons déjà que dans plus de 90% des stations, le prix a augmenté entre début mai, et fin mai
> mean(B$var > 0)
[1] 0.9288522
mais les hausses de plus de 10% restent rares (moins de 5% des stations essence)
> mean(B$var > 10)
[1] 0.03305452
La distribution de la variation des prix (en %) est la suivante
> plot(density(B$var),xlim=c(-5,20))
Si on regarde maintenant où ont été observées ces fortes hausses, on observe qu’elles peuvent avoir lieu n’importe où
> library(maps)
> map("france")
> points(B$lon,B$lat,pch=19,col=c(rgb(0,0,1,.25),
+ rgb(1,0,0,.95))[1+(B$var>10*1)],cex=.5)
et c’est encore plus flagrant quand on regarde les hausses de plus de 5%
> points(B$lon,B$lat,pch=19,col=c(rgb(0,0,1,.35),
+ rgb(1,0,0,.95))[1+(B$var>5*1)],cex=.5)
Et si on regarde les endroits où la proportion des stations ayant fortement augmenté les prix est la plus forte, on obtient la carte suivante,
Autrement dit la hausse des prix a pu être observée un peu partout en France. On peut alors comparer avec la carte des pénuries, mise en ligne sur https://mon-essence.fr/
Si certaines régions avec des fortes hausses de prix correspondent à des pénuries d’essence, ce n’est pas le cas partout. Bref, comprendre ce qui s’est passé sur les prix ce mois de mai est loin d’être simple… à suivre donc….