X-Git-Url: https://git.auder.net/images/pieces/Cwda/bf.svg?a=blobdiff_plain;f=reports%2Freport.ipynb;h=f0a06d007b84dd633d9399e2c5fcb11ac654e663;hb=ee8b1b4e3c13f8dcf13a2c8da6a3bef1520c8252;hp=bdf1723b33efbe49439b8daf77e265ed59adf487;hpb=d4841a3f15f94ce0520559aed9466c9c3f259d68;p=talweg.git diff --git a/reports/report.ipynb b/reports/report.ipynb index bdf1723..f0a06d0 100644 --- a/reports/report.ipynb +++ b/reports/report.ipynb @@ -2,7 +2,10 @@ "cells": [ { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "deletable": true, + "editable": true + }, "source": [ "\n", "\n", @@ -30,7 +33,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -38,21 +43,22 @@ "\n", "ts_data = read.csv(system.file(\"extdata\",\"pm10_mesures_H_loc_report.csv\",package=\"talweg\"))\n", "exo_data = read.csv(system.file(\"extdata\",\"meteo_extra_noNAs.csv\",package=\"talweg\"))\n", - "data = getData(ts_data, exo_data, input_tz = \"Europe/Paris\", working_tz=\"Europe/Paris\", predict_at=7)\n", + "# Predict from P+1 to P+H included\n", + "H = 17\n", + "data = getData(ts_data, exo_data, input_tz = \"GMT\", working_tz=\"GMT\", predict_at=7)\n", "\n", "indices_ch = seq(as.Date(\"2015-01-18\"),as.Date(\"2015-01-24\"),\"days\")\n", "indices_ep = seq(as.Date(\"2015-03-15\"),as.Date(\"2015-03-21\"),\"days\")\n", - "indices_np = seq(as.Date(\"2015-04-26\"),as.Date(\"2015-05-02\"),\"days\")\n", - "\n", - "H = 3 #predict from 2pm to 4pm" + "indices_np = seq(as.Date(\"2015-04-26\"),as.Date(\"2015-05-02\"),\"days\")" ] }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "deletable": true, + "editable": true + }, "source": [ - "\n", - "\n", "

Pollution par chauffage

" ] }, @@ -60,36 +66,90 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ - "p_nn_exo = computeForecast(data, indices_ch, \"Neighbors\", \"Neighbors\", simtype=\"exo\", horizon=H)\n", - "p_nn_mix = computeForecast(data, indices_ch, \"Neighbors\", \"Neighbors\", simtype=\"mix\", horizon=H)\n", - "p_az = computeForecast(data, indices_ch, \"Average\", \"Zero\", horizon=H) #, memory=183)\n", - "p_pz = computeForecast(data, indices_ch, \"Persistence\", \"Zero\", horizon=H, same_day=TRUE)" + "reload(\"../pkg\")\n", + "#p1 = computeForecast(data, indices_ch, \"Neighbors\", \"Zero\", horizon=H, simtype=\"exo\")\n", + "#p2 = computeForecast(data, indices_ch, \"Neighbors\", \"Zero\", horizon=H, simtype=\"endo\")\n", + "p3 = computeForecast(data, indices_ch, \"Neighbors\", \"Zero\", horizon=H, simtype=\"mix\")\n", + "p4 = computeForecast(data, indices_ch, \"Neighbors\", \"Neighbors\", horizon=H, simtype=\"mix\")\n", + "#p4 = computeForecast(data, indices_ch, \"Neighbors2\", \"Zero\", horizon=H, simtype=\"exo\")\n", + "#p5 = computeForecast(data, indices_ch, \"Neighbors2\", \"Zero\", horizon=H, simtype=\"endo\")\n", + "#p6 = computeForecast(data, indices_ch, \"Neighbors2\", \"Zero\", horizon=H, simtype=\"mix\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ - "e_nn_exo = computeError(data, p_nn_exo, H)\n", - "e_nn_mix = computeError(data, p_nn_mix, H)\n", - "e_az = computeError(data, p_az, H)\n", - "e_pz = computeError(data, p_pz, H)\n", - "\n", - "options(repr.plot.width=9, repr.plot.height=7)\n", - "plotError(list(e_nn_mix, e_pz, e_az, e_nn_exo), cols=c(1,2,colors()[258], 4))\n", - "\n", - "# Noir: neighbors_mix, bleu: neighbors_exo, vert: moyenne, rouge: persistence\n", - "\n", - "i_np = which.min(e_nn_exo$abs$indices)\n", - "i_p = which.max(e_nn_exo$abs$indices)" + "getSimilarDaysIndices(1000,10,TRUE,data)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "deletable": true, + "editable": true + }, + "outputs": [], + "source": [ + "as.POSIXlt(data$getTime(1000)[1])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "deletable": true, + "editable": true + }, + "outputs": [], + "source": [ + "#e1 = computeError(data, p1, H)\n", + "#e2 = computeError(data, p2, H)\n", + "e3 = computeError(data, p3, H)\n", + "e4 = computeError(data, p4, H)\n", + "#e5 = computeError(data, p5, H)\n", + "#e6 = computeError(data, p6, H)\n", + "plotError(list(e3,e4), cols=c(1,2))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "deletable": true, + "editable": true + }, + "outputs": [], + "source": [ + "\tfirst_day = 1\n", + "params=p3$getParams(3)\n", + "\tfilter = (params$indices >= first_day)\n", + "\tindices = params$indices[filter]\n", + "\tweights = params$weights[filter]\n", + "\n", + "\n", + "\tgaps = sapply(indices, function(i) {\n", + "\t\tdata$getSerie(i+1)[1] - tail(data$getSerie(i), 1)\n", + "\t})\n", + "\tscal_product = weights * gaps\n", + "\tnorm_fact = sum( weights[!is.na(scal_product)] )\n", + "\tsum(scal_product, na.rm=TRUE) / norm_fact\n" ] }, { @@ -99,18 +159,28 @@ "collapsed": false }, "outputs": [], + "source": [ + "hist(weights)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "deletable": true, + "editable": true + }, + "outputs": [], "source": [ "options(repr.plot.width=9, repr.plot.height=4)\n", "par(mfrow=c(1,2))\n", "\n", - "plotPredReal(data, p_nn_exo, i_np); title(paste(\"PredReal nn exo day\",i_np))\n", - "plotPredReal(data, p_nn_exo, i_p); title(paste(\"PredReal nn exo day\",i_p))\n", - "\n", - "plotPredReal(data, p_nn_mix, i_np); title(paste(\"PredReal nn mix day\",i_np))\n", - "plotPredReal(data, p_nn_mix, i_p); title(paste(\"PredReal nn mix day\",i_p))\n", + "plotPredReal(data, p3, 3); title(paste(\"PredReal nn exo day\",3))\n", + "plotPredReal(data, p3, 5); title(paste(\"PredReal nn exo day\",5))\n", "\n", - "plotPredReal(data, p_az, i_np); title(paste(\"PredReal az day\",i_np))\n", - "plotPredReal(data, p_az, i_p); title(paste(\"PredReal az day\",i_p))\n", + "plotPredReal(data, p4, 3); title(paste(\"PredReal nn mix day\",3))\n", + "plotPredReal(data, p4, 5); title(paste(\"PredReal nn mix day\",5))\n", "\n", "# Bleu: prévue, noir: réalisée" ] @@ -119,7 +189,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -135,7 +207,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -151,7 +225,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -169,7 +245,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -187,7 +265,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -201,7 +281,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "deletable": true, + "editable": true + }, "source": [ "\n", "\n", @@ -212,28 +295,36 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ - "p_nn_exo = computeForecast(data, indices_ep, \"Neighbors\", \"Neighbors\", simtype=\"exo\", horizon=H)\n", - "p_nn_mix = computeForecast(data, indices_ep, \"Neighbors\", \"Neighbors\", simtype=\"mix\", horizon=H)\n", - "p_az = computeForecast(data, indices_ep, \"Average\", \"Zero\", horizon=H) #, memory=183)\n", - "p_pz = computeForecast(data, indices_ep, \"Persistence\", \"Zero\", horizon=H, same_day=TRUE)" + "p_nn_exo = computeForecast(data, indices_ep, \"Neighbors\", \"Neighbors\",\n", + "\thorizon=3, simtype=\"exo\")\n", + "p_nn_mix = computeForecast(data, indices_ep, \"Neighbors\", \"Neighbors\",\n", + "\thorizon=3, simtype=\"mix\")\n", + "p_az = computeForecast(data, indices_ep, \"Average\", \"Zero\",\n", + "\thorizon=3)\n", + "p_pz = computeForecast(data, indices_ep, \"Persistence\", \"Zero\",\n", + "\thorizon=3, same_day=TRUE)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ - "e_nn_exo = computeError(data, p_nn_exo, H)\n", - "e_nn_mix = computeError(data, p_nn_mix, H)\n", - "e_az = computeError(data, p_az, H)\n", - "e_pz = computeError(data, p_pz, H)\n", + "e_nn_exo = computeError(data, p_nn_exo, 3)\n", + "e_nn_mix = computeError(data, p_nn_mix, 3)\n", + "e_az = computeError(data, p_az, 3)\n", + "e_pz = computeError(data, p_pz, 3)\n", "options(repr.plot.width=9, repr.plot.height=7)\n", "plotError(list(e_nn_mix, e_pz, e_az, e_nn_exo), cols=c(1,2,colors()[258], 4))\n", "\n", @@ -247,7 +338,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -270,7 +363,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -286,7 +381,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -302,7 +399,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -320,7 +419,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -338,7 +439,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -352,7 +455,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "deletable": true, + "editable": true + }, "source": [ "\n", "\n", @@ -363,28 +469,36 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ - "p_nn_exo = computeForecast(data, indices_np, \"Neighbors\", \"Neighbors\", simtype=\"exo\", horizon=H)\n", - "p_nn_mix = computeForecast(data, indices_np, \"Neighbors\", \"Neighbors\", simtype=\"mix\", horizon=H)\n", - "p_az = computeForecast(data, indices_np, \"Average\", \"Zero\", horizon=H) #, memory=183)\n", - "p_pz = computeForecast(data, indices_np, \"Persistence\", \"Zero\", horizon=H, same_day=FALSE)" + "p_nn_exo = computeForecast(data, indices_np, \"Neighbors\", \"Neighbors\",\n", + "\thorizon=3, simtype=\"exo\")\n", + "p_nn_mix = computeForecast(data, indices_np, \"Neighbors\", \"Neighbors\",\n", + "\thorizon=3, simtype=\"mix\")\n", + "p_az = computeForecast(data, indices_np, \"Average\", \"Zero\",\n", + "\thorizon=3)\n", + "p_pz = computeForecast(data, indices_np, \"Persistence\", \"Zero\",\n", + "\thorizon=3, same_day=FALSE)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ - "e_nn_exo = computeError(data, p_nn_exo, H)\n", - "e_nn_mix = computeError(data, p_nn_mix, H)\n", - "e_az = computeError(data, p_az, H)\n", - "e_pz = computeError(data, p_pz, H)\n", + "e_nn_exo = computeError(data, p_nn_exo, 3)\n", + "e_nn_mix = computeError(data, p_nn_mix, 3)\n", + "e_az = computeError(data, p_az, 3)\n", + "e_pz = computeError(data, p_pz, 3)\n", "options(repr.plot.width=9, repr.plot.height=7)\n", "plotError(list(e_nn_mix, e_pz, e_az, e_nn_exo), cols=c(1,2,colors()[258], 4))\n", "\n", @@ -398,7 +512,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -421,7 +537,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -437,7 +555,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -453,7 +573,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -471,7 +593,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -489,7 +613,9 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": false, + "deletable": true, + "editable": true }, "outputs": [], "source": [ @@ -503,7 +629,10 @@ }, { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "deletable": true, + "editable": true + }, "source": [ "\n", "\n",