initial commit
This commit is contained in:
6
.ipynb_checkpoints/Untitled-checkpoint.ipynb
Normal file
6
.ipynb_checkpoints/Untitled-checkpoint.ipynb
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"cells": [],
|
||||
"metadata": {},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
11579
.ipynb_checkpoints/training_set_2024_2025-checkpoint.csv
Normal file
11579
.ipynb_checkpoints/training_set_2024_2025-checkpoint.csv
Normal file
File diff suppressed because it is too large
Load Diff
660
Untitled.ipynb
Normal file
660
Untitled.ipynb
Normal file
File diff suppressed because one or more lines are too long
367
amersfoort_2024_dagelijks.csv
Normal file
367
amersfoort_2024_dagelijks.csv
Normal file
@@ -0,0 +1,367 @@
|
||||
id,datum,locatie,latitude,longitude,temp_max,temp_min,temp_gem,neerslag,wind_max,wind_gem,wind_richting,luchtvochtigheid_gem,bewolking_gem,zonuren,toegevoegd_op
|
||||
1,2024-01-01,Amersfoort,52.15,5.39,8.3,5.3,6.8,3.5,32.7,25.7,222.0,,,5.569213888888888,2025-11-12 19:24:06
|
||||
2,2024-01-02,Amersfoort,52.15,5.39,11.6,6.3,9.9,20.8,46.9,29.3,208.0,,,,2025-11-12 19:24:06
|
||||
3,2024-01-03,Amersfoort,52.15,5.39,9.6,6.7,8.5,6.4,45.1,27.5,243.0,,,1.9042138888888889,2025-11-12 19:24:06
|
||||
4,2024-01-04,Amersfoort,52.15,5.39,8.4,5.8,6.9,5.3,18.0,11.4,253.0,,,0.23977777777777778,2025-11-12 19:24:06
|
||||
5,2024-01-05,Amersfoort,52.15,5.39,8.1,5.1,6.6,7.8,22.7,17.6,192.0,,,,2025-11-12 19:24:06
|
||||
6,2024-01-06,Amersfoort,52.15,5.39,5.4,0.9,3.2,0.2,16.4,14.9,2.0,,,,2025-11-12 19:24:06
|
||||
7,2024-01-07,Amersfoort,52.15,5.39,0.9,-2.8,-0.3,0.2,25.0,18.6,43.0,,,3.9504194444444445,2025-11-12 19:24:06
|
||||
8,2024-01-08,Amersfoort,52.15,5.39,-0.1,-3.7,-2.1,0.0,26.3,21.1,55.0,,,3.316052777777778,2025-11-12 19:24:06
|
||||
9,2024-01-09,Amersfoort,52.15,5.39,-1.0,-5.9,-3.9,0.0,22.0,19.8,66.0,,,6.562180555555555,2025-11-12 19:24:06
|
||||
10,2024-01-10,Amersfoort,52.15,5.39,-0.2,-5.3,-3.7,0.0,17.3,14.4,64.0,,,6.583083333333333,2025-11-12 19:24:06
|
||||
11,2024-01-11,Amersfoort,52.15,5.39,1.5,-6.1,-2.1,0.0,10.5,7.3,18.0,,,3.5682750000000003,2025-11-12 19:24:06
|
||||
12,2024-01-12,Amersfoort,52.15,5.39,4.8,-1.5,1.8,0.0,9.4,6.7,301.0,,,1.9977055555555554,2025-11-12 19:24:06
|
||||
13,2024-01-13,Amersfoort,52.15,5.39,4.9,2.5,3.6,0.4,21.3,16.3,255.0,,,,2025-11-12 19:24:06
|
||||
14,2024-01-14,Amersfoort,52.15,5.39,4.2,2.0,3.0,3.9,21.9,17.9,251.0,,,,2025-11-12 19:24:06
|
||||
15,2024-01-15,Amersfoort,52.15,5.39,3.2,0.3,1.3,4.4,23.0,18.6,284.0,,,5.8549,2025-11-12 19:24:06
|
||||
16,2024-01-16,Amersfoort,52.15,5.39,1.8,-2.2,0.0,1.0,20.1,16.4,227.0,,,5.142319444444444,2025-11-12 19:24:06
|
||||
17,2024-01-17,Amersfoort,52.15,5.39,-0.2,-3.3,-1.8,0.0,18.6,9.8,189.0,,,,2025-11-12 19:24:06
|
||||
18,2024-01-18,Amersfoort,52.15,5.39,4.1,-4.1,-1.3,0.1,12.3,9.3,307.0,,,6.995158333333333,2025-11-12 19:24:06
|
||||
19,2024-01-19,Amersfoort,52.15,5.39,5.0,-2.2,0.3,0.2,22.0,16.0,238.0,,,7.047813888888889,2025-11-12 19:24:06
|
||||
20,2024-01-20,Amersfoort,52.15,5.39,1.3,-2.0,-0.9,0.0,22.4,19.9,208.0,,,6.198366666666667,2025-11-12 19:24:06
|
||||
21,2024-01-21,Amersfoort,52.15,5.39,6.6,-1.5,3.2,0.4,39.0,29.1,197.0,,,0.1302888888888889,2025-11-12 19:24:06
|
||||
22,2024-01-22,Amersfoort,52.15,5.39,10.7,6.8,8.9,7.3,45.9,36.1,232.0,,,4.407841666666666,2025-11-12 19:24:06
|
||||
23,2024-01-23,Amersfoort,52.15,5.39,11.7,4.9,7.2,5.9,36.8,27.4,236.0,,,3.8018805555555555,2025-11-12 19:24:06
|
||||
24,2024-01-24,Amersfoort,52.15,5.39,12.6,7.2,9.9,1.3,46.9,33.5,253.0,,,6.146152777777778,2025-11-12 19:24:06
|
||||
25,2024-01-25,Amersfoort,52.15,5.39,9.3,2.8,6.5,0.9,20.7,13.9,228.0,,,3.181822222222222,2025-11-12 19:24:06
|
||||
26,2024-01-26,Amersfoort,52.15,5.39,10.8,2.8,7.9,3.5,36.7,24.8,252.0,,,5.5694333333333335,2025-11-12 19:24:06
|
||||
27,2024-01-27,Amersfoort,52.15,5.39,6.9,1.1,3.2,0.0,14.6,12.4,216.0,,,7.199344444444444,2025-11-12 19:24:06
|
||||
28,2024-01-28,Amersfoort,52.15,5.39,8.8,-0.8,3.7,0.0,19.2,14.9,161.0,,,7.568505555555555,2025-11-12 19:24:06
|
||||
29,2024-01-29,Amersfoort,52.15,5.39,10.2,3.3,6.3,0.0,16.9,12.7,191.0,,,4.856741666666667,2025-11-12 19:24:06
|
||||
30,2024-01-30,Amersfoort,52.15,5.39,10.9,6.0,8.0,0.5,28.5,18.8,225.0,,,0.5032527777777778,2025-11-12 19:24:06
|
||||
31,2024-01-31,Amersfoort,52.15,5.39,7.6,3.8,6.0,0.1,28.2,17.4,225.0,,,0.41797222222222224,2025-11-12 19:24:06
|
||||
32,2024-02-01,Amersfoort,52.15,5.39,8.9,3.4,6.3,4.3,28.2,16.2,272.0,,,6.8914583333333335,2025-11-12 19:24:06
|
||||
33,2024-02-02,Amersfoort,52.15,5.39,9.8,4.3,7.5,0.0,29.1,23.0,243.0,,,2.1306805555555557,2025-11-12 19:24:06
|
||||
34,2024-02-03,Amersfoort,52.15,5.39,10.6,8.4,9.6,0.5,25.9,22.5,251.0,,,,2025-11-12 19:24:06
|
||||
35,2024-02-04,Amersfoort,52.15,5.39,10.9,9.1,9.8,5.6,32.1,24.7,259.0,,,0.012002777777777779,2025-11-12 19:24:06
|
||||
36,2024-02-05,Amersfoort,52.15,5.39,10.7,7.5,9.2,0.1,43.1,31.6,247.0,,,4.515925,2025-11-12 19:24:06
|
||||
37,2024-02-06,Amersfoort,52.15,5.39,11.4,9.2,10.1,6.7,40.4,32.4,237.0,,,1.9426916666666665,2025-11-12 19:24:06
|
||||
38,2024-02-07,Amersfoort,52.15,5.39,9.9,2.0,5.1,10.8,33.2,8.8,311.0,,,4.7133972222222225,2025-11-12 19:24:06
|
||||
39,2024-02-08,Amersfoort,52.15,5.39,6.3,-0.4,2.1,9.5,23.0,10.4,99.0,,,,2025-11-12 19:24:06
|
||||
40,2024-02-09,Amersfoort,52.15,5.39,12.7,8.5,10.2,9.3,24.6,18.8,192.0,,,5.184147222222222,2025-11-12 19:24:06
|
||||
41,2024-02-10,Amersfoort,52.15,5.39,12.8,6.9,9.6,0.7,16.3,12.2,156.0,,,4.676586111111111,2025-11-12 19:24:06
|
||||
42,2024-02-11,Amersfoort,52.15,5.39,9.8,5.4,8.4,2.9,17.3,10.7,203.0,,,0.36647777777777774,2025-11-12 19:24:06
|
||||
43,2024-02-12,Amersfoort,52.15,5.39,8.8,3.2,6.0,2.2,19.4,12.9,250.0,,,7.081397222222222,2025-11-12 19:24:06
|
||||
44,2024-02-13,Amersfoort,52.15,5.39,9.1,2.9,5.7,1.7,23.2,17.6,206.0,,,6.536816666666667,2025-11-12 19:24:06
|
||||
45,2024-02-14,Amersfoort,52.15,5.39,12.4,7.7,10.5,5.6,28.9,22.9,222.0,,,,2025-11-12 19:24:06
|
||||
46,2024-02-15,Amersfoort,52.15,5.39,15.4,10.7,12.4,2.5,20.2,17.2,194.0,,,1.938925,2025-11-12 19:24:06
|
||||
47,2024-02-16,Amersfoort,52.15,5.39,12.8,8.6,11.0,1.0,21.1,16.3,226.0,,,,2025-11-12 19:24:06
|
||||
48,2024-02-17,Amersfoort,52.15,5.39,12.1,5.7,9.1,0.3,15.4,10.0,243.0,,,6.865180555555556,2025-11-12 19:24:06
|
||||
49,2024-02-18,Amersfoort,52.15,5.39,10.0,8.4,9.1,21.3,32.1,23.8,223.0,,,,2025-11-12 19:24:06
|
||||
50,2024-02-19,Amersfoort,52.15,5.39,10.8,5.8,8.3,2.3,25.7,18.0,272.0,,,0.2375111111111111,2025-11-12 19:24:06
|
||||
51,2024-02-20,Amersfoort,52.15,5.39,11.2,5.2,8.0,0.4,28.3,17.3,235.0,,,4.0181305555555555,2025-11-12 19:24:06
|
||||
52,2024-02-21,Amersfoort,52.15,5.39,10.6,8.1,9.2,6.2,33.2,25.0,208.0,,,,2025-11-12 19:24:06
|
||||
53,2024-02-22,Amersfoort,52.15,5.39,12.9,5.5,10.1,7.4,43.2,25.0,206.0,,,2.4891666666666667,2025-11-12 19:24:06
|
||||
54,2024-02-23,Amersfoort,52.15,5.39,8.4,3.2,5.2,12.5,36.9,24.4,213.0,,,4.871477777777778,2025-11-12 19:24:06
|
||||
55,2024-02-24,Amersfoort,52.15,5.39,6.8,2.5,4.3,4.1,22.7,16.2,194.0,,,5.608397222222222,2025-11-12 19:24:06
|
||||
56,2024-02-25,Amersfoort,52.15,5.39,8.6,3.4,5.4,2.5,22.3,14.8,184.0,,,6.584788888888889,2025-11-12 19:24:06
|
||||
57,2024-02-26,Amersfoort,52.15,5.39,6.3,3.3,4.5,4.5,28.8,23.3,43.0,,,,2025-11-12 19:24:06
|
||||
58,2024-02-27,Amersfoort,52.15,5.39,8.4,-0.5,3.7,0.0,17.7,10.6,23.0,,,9.588761111111111,2025-11-12 19:24:06
|
||||
59,2024-02-28,Amersfoort,52.15,5.39,8.6,-0.2,4.8,0.2,19.6,13.3,196.0,,,,2025-11-12 19:24:06
|
||||
60,2024-02-29,Amersfoort,52.15,5.39,8.5,5.3,7.6,9.5,23.5,20.3,180.0,,,,2025-11-12 19:24:06
|
||||
61,2024-03-01,Amersfoort,52.15,5.39,9.8,5.1,8.3,1.8,30.6,22.7,175.0,,,5.140544444444444,2025-11-12 19:24:06
|
||||
62,2024-03-02,Amersfoort,52.15,5.39,12.8,4.9,9.1,0.9,27.9,21.5,159.0,,,9.779425,2025-11-12 19:24:06
|
||||
63,2024-03-03,Amersfoort,52.15,5.39,14.9,6.4,10.2,0.0,18.6,11.5,135.0,,,8.564166666666667,2025-11-12 19:24:06
|
||||
64,2024-03-04,Amersfoort,52.15,5.39,11.0,3.5,7.4,0.0,17.7,11.0,310.0,,,9.840463888888888,2025-11-12 19:24:06
|
||||
65,2024-03-05,Amersfoort,52.15,5.39,8.8,2.3,5.8,0.3,8.9,6.7,167.0,,,2.2591277777777776,2025-11-12 19:24:06
|
||||
66,2024-03-06,Amersfoort,52.15,5.39,10.6,1.5,5.8,0.2,12.2,5.6,109.0,,,7.724930555555556,2025-11-12 19:24:06
|
||||
67,2024-03-07,Amersfoort,52.15,5.39,9.1,2.0,5.1,0.0,23.2,15.3,81.0,,,6.2634388888888894,2025-11-12 19:24:06
|
||||
68,2024-03-08,Amersfoort,52.15,5.39,9.8,0.2,4.9,0.0,26.6,20.0,94.0,,,10.190436111111111,2025-11-12 19:24:06
|
||||
69,2024-03-09,Amersfoort,52.15,5.39,13.2,2.9,7.5,0.0,21.2,17.6,104.0,,,9.0,2025-11-12 19:24:06
|
||||
70,2024-03-10,Amersfoort,52.15,5.39,13.2,5.8,9.1,0.0,23.2,17.9,78.0,,,7.567113888888889,2025-11-12 19:24:06
|
||||
71,2024-03-11,Amersfoort,52.15,5.39,8.0,6.3,7.1,9.5,11.3,7.6,6.0,,,,2025-11-12 19:24:06
|
||||
72,2024-03-12,Amersfoort,52.15,5.39,10.4,6.2,8.2,1.3,18.5,14.5,225.0,,,1.1227972222222222,2025-11-12 19:24:06
|
||||
73,2024-03-13,Amersfoort,52.15,5.39,12.5,7.3,10.6,0.9,25.2,16.5,229.0,,,,2025-11-12 19:24:06
|
||||
74,2024-03-14,Amersfoort,52.15,5.39,16.5,7.8,12.1,0.0,19.1,16.8,198.0,,,9.687002777777778,2025-11-12 19:24:06
|
||||
75,2024-03-15,Amersfoort,52.15,5.39,14.5,10.6,12.3,3.0,28.0,21.6,222.0,,,6.469469444444444,2025-11-12 19:24:06
|
||||
76,2024-03-16,Amersfoort,52.15,5.39,10.4,2.5,8.2,1.0,22.5,15.1,290.0,,,6.416097222222223,2025-11-12 19:24:06
|
||||
77,2024-03-17,Amersfoort,52.15,5.39,12.9,2.7,8.6,1.4,19.6,14.5,145.0,,,1.171413888888889,2025-11-12 19:24:06
|
||||
78,2024-03-18,Amersfoort,52.15,5.39,13.6,5.0,10.4,0.5,15.3,11.0,230.0,,,5.451022222222222,2025-11-12 19:24:06
|
||||
79,2024-03-19,Amersfoort,52.15,5.39,15.9,7.3,10.7,0.2,19.1,11.0,217.0,,,8.783308333333334,2025-11-12 19:24:06
|
||||
80,2024-03-20,Amersfoort,52.15,5.39,16.8,5.8,11.1,1.4,9.0,5.7,244.0,,,8.801341666666668,2025-11-12 19:24:06
|
||||
81,2024-03-21,Amersfoort,52.15,5.39,11.5,7.8,9.5,0.3,18.4,12.7,283.0,,,2.284597222222222,2025-11-12 19:24:06
|
||||
82,2024-03-22,Amersfoort,52.15,5.39,10.9,6.9,9.5,2.8,24.4,16.1,250.0,,,,2025-11-12 19:24:06
|
||||
83,2024-03-23,Amersfoort,52.15,5.39,8.1,4.2,6.0,2.0,28.3,18.9,257.0,,,10.923219444444443,2025-11-12 19:24:06
|
||||
84,2024-03-24,Amersfoort,52.15,5.39,8.1,4.3,6.0,14.1,33.9,24.9,271.0,,,8.327066666666667,2025-11-12 19:24:06
|
||||
85,2024-03-25,Amersfoort,52.15,5.39,11.1,2.8,6.8,0.0,16.9,11.0,188.0,,,11.322966666666666,2025-11-12 19:24:06
|
||||
86,2024-03-26,Amersfoort,52.15,5.39,13.7,3.7,8.9,0.0,18.8,16.1,130.0,,,8.719047222222223,2025-11-12 19:24:06
|
||||
87,2024-03-27,Amersfoort,52.15,5.39,11.1,6.3,9.2,1.5,18.8,15.0,178.0,,,2.4286055555555555,2025-11-12 19:24:06
|
||||
88,2024-03-28,Amersfoort,52.15,5.39,11.2,5.3,8.0,2.9,28.1,20.1,187.0,,,6.282219444444445,2025-11-12 19:24:06
|
||||
89,2024-03-29,Amersfoort,52.15,5.39,13.6,7.9,10.5,1.6,27.3,19.7,193.0,,,8.922691666666667,2025-11-12 19:24:06
|
||||
90,2024-03-30,Amersfoort,52.15,5.39,14.4,5.9,9.8,2.5,26.0,9.5,209.0,,,4.796083333333334,2025-11-12 19:24:06
|
||||
91,2024-03-31,Amersfoort,52.15,5.39,15.3,4.9,10.1,3.9,19.1,12.1,102.0,,,5.643963888888889,2025-11-12 19:24:06
|
||||
92,2024-04-01,Amersfoort,52.15,5.39,12.4,6.8,9.5,0.5,23.0,13.8,224.0,,,1.7640805555555554,2025-11-12 19:24:06
|
||||
93,2024-04-02,Amersfoort,52.15,5.39,11.9,6.7,9.1,3.3,28.5,20.0,228.0,,,7.571925,2025-11-12 19:24:06
|
||||
94,2024-04-03,Amersfoort,52.15,5.39,13.5,8.6,10.6,7.9,26.0,18.3,207.0,,,2.6503972222222223,2025-11-12 19:24:06
|
||||
95,2024-04-04,Amersfoort,52.15,5.39,14.1,8.1,11.2,10.8,35.3,23.5,230.0,,,6.816113888888888,2025-11-12 19:24:06
|
||||
96,2024-04-05,Amersfoort,52.15,5.39,16.8,11.0,13.3,8.2,31.9,21.8,212.0,,,5.3554055555555555,2025-11-12 19:24:06
|
||||
97,2024-04-06,Amersfoort,52.15,5.39,23.7,11.1,17.3,0.0,28.9,18.4,183.0,,,12.016430555555557,2025-11-12 19:24:06
|
||||
98,2024-04-07,Amersfoort,52.15,5.39,18.9,13.6,16.0,1.8,31.1,21.5,217.0,,,10.831755555555555,2025-11-12 19:24:06
|
||||
99,2024-04-08,Amersfoort,52.15,5.39,17.9,11.3,14.6,0.5,14.6,9.9,154.0,,,9.63081388888889,2025-11-12 19:24:06
|
||||
100,2024-04-09,Amersfoort,52.15,5.39,14.6,9.4,11.8,4.3,42.0,27.1,221.0,,,9.176852777777777,2025-11-12 19:24:06
|
||||
101,2024-04-10,Amersfoort,52.15,5.39,13.9,7.9,10.7,1.1,23.6,16.5,239.0,,,12.2375,2025-11-12 19:24:06
|
||||
102,2024-04-11,Amersfoort,52.15,5.39,15.0,10.4,13.0,2.1,24.9,18.8,224.0,,,,2025-11-12 19:24:06
|
||||
103,2024-04-12,Amersfoort,52.15,5.39,19.0,11.9,15.3,0.0,28.7,20.3,236.0,,,9.463730555555555,2025-11-12 19:24:06
|
||||
104,2024-04-13,Amersfoort,52.15,5.39,21.4,11.6,16.5,0.0,26.3,19.4,233.0,,,11.560311111111112,2025-11-12 19:24:06
|
||||
105,2024-04-14,Amersfoort,52.15,5.39,13.6,8.6,11.3,0.0,20.8,13.3,284.0,,,7.40435,2025-11-12 19:24:06
|
||||
106,2024-04-15,Amersfoort,52.15,5.39,11.1,5.5,8.2,10.0,36.3,24.3,238.0,,,7.283913888888889,2025-11-12 19:24:06
|
||||
107,2024-04-16,Amersfoort,52.15,5.39,10.1,4.9,7.6,12.4,32.4,24.0,307.0,,,9.776852777777778,2025-11-12 19:24:06
|
||||
108,2024-04-17,Amersfoort,52.15,5.39,9.1,3.0,5.9,7.1,17.4,11.0,323.0,,,8.25206388888889,2025-11-12 19:24:06
|
||||
109,2024-04-18,Amersfoort,52.15,5.39,10.8,2.6,6.9,1.1,20.5,12.8,298.0,,,10.874516666666667,2025-11-12 19:24:06
|
||||
110,2024-04-19,Amersfoort,52.15,5.39,9.6,5.7,7.9,15.5,33.7,25.0,299.0,,,7.292091666666666,2025-11-12 19:24:06
|
||||
111,2024-04-20,Amersfoort,52.15,5.39,9.4,4.0,6.6,9.8,30.5,22.3,333.0,,,9.406500000000001,2025-11-12 19:24:06
|
||||
112,2024-04-21,Amersfoort,52.15,5.39,10.6,3.3,6.0,2.9,24.7,17.7,17.0,,,12.112430555555555,2025-11-12 19:24:06
|
||||
113,2024-04-22,Amersfoort,52.15,5.39,8.9,0.8,5.3,0.2,21.1,13.6,15.0,,,9.944083333333333,2025-11-12 19:24:06
|
||||
114,2024-04-23,Amersfoort,52.15,5.39,10.7,-0.1,5.4,1.6,19.9,11.0,318.0,,,9.138388888888889,2025-11-12 19:24:06
|
||||
115,2024-04-24,Amersfoort,52.15,5.39,8.9,3.7,5.9,4.1,30.1,19.3,316.0,,,11.460675,2025-11-12 19:24:06
|
||||
116,2024-04-25,Amersfoort,52.15,5.39,9.4,2.5,5.8,2.7,24.1,15.1,229.0,,,7.118438888888889,2025-11-12 19:24:06
|
||||
117,2024-04-26,Amersfoort,52.15,5.39,11.4,4.8,8.1,2.7,15.5,10.3,237.0,,,10.880325,2025-11-12 19:24:06
|
||||
118,2024-04-27,Amersfoort,52.15,5.39,16.1,4.1,10.6,5.1,18.0,12.5,144.0,,,9.659563888888888,2025-11-12 19:24:06
|
||||
119,2024-04-28,Amersfoort,52.15,5.39,16.1,6.8,12.6,1.6,36.9,23.5,192.0,,,12.115208333333333,2025-11-12 19:24:06
|
||||
120,2024-04-29,Amersfoort,52.15,5.39,18.0,6.3,12.4,0.7,19.5,11.5,180.0,,,12.325480555555556,2025-11-12 19:24:06
|
||||
121,2024-04-30,Amersfoort,52.15,5.39,21.4,11.9,16.0,5.4,14.3,9.6,142.0,,,12.51376388888889,2025-11-12 19:24:06
|
||||
122,2024-05-01,Amersfoort,52.15,5.39,25.0,12.6,18.4,1.3,15.4,10.9,23.0,,,12.909083333333333,2025-11-12 19:24:06
|
||||
123,2024-05-02,Amersfoort,52.15,5.39,24.9,12.4,17.8,1.1,16.9,12.7,67.0,,,13.235266666666666,2025-11-12 19:24:06
|
||||
124,2024-05-03,Amersfoort,52.15,5.39,12.8,8.8,11.8,5.5,25.7,17.2,225.0,,,2.439888888888889,2025-11-12 19:24:06
|
||||
125,2024-05-04,Amersfoort,52.15,5.39,16.0,7.1,11.4,10.3,15.1,9.5,142.0,,,7.675958333333334,2025-11-12 19:24:06
|
||||
126,2024-05-05,Amersfoort,52.15,5.39,15.9,8.6,12.2,2.0,15.2,9.7,277.0,,,12.2004,2025-11-12 19:24:06
|
||||
127,2024-05-06,Amersfoort,52.15,5.39,18.5,8.4,13.8,0.0,13.2,9.6,75.0,,,8.075977777777778,2025-11-12 19:24:06
|
||||
128,2024-05-07,Amersfoort,52.15,5.39,17.5,9.0,13.1,0.5,18.6,12.9,13.0,,,13.832561111111112,2025-11-12 19:24:06
|
||||
129,2024-05-08,Amersfoort,52.15,5.39,15.2,9.6,12.1,0.7,11.6,7.2,359.0,,,2.504594444444445,2025-11-12 19:24:06
|
||||
130,2024-05-09,Amersfoort,52.15,5.39,17.7,6.8,12.6,0.0,9.0,5.7,338.0,,,10.001269444444445,2025-11-12 19:24:06
|
||||
131,2024-05-10,Amersfoort,52.15,5.39,20.1,7.3,14.2,0.0,14.3,8.6,31.0,,,13.842433333333334,2025-11-12 19:24:06
|
||||
132,2024-05-11,Amersfoort,52.15,5.39,21.2,9.7,15.6,0.0,17.1,12.8,59.0,,,13.7736,2025-11-12 19:24:06
|
||||
133,2024-05-12,Amersfoort,52.15,5.39,24.2,12.6,18.4,0.0,20.4,16.9,100.0,,,14.337727777777777,2025-11-12 19:24:06
|
||||
134,2024-05-13,Amersfoort,52.15,5.39,23.4,13.3,18.8,0.3,18.6,12.2,154.0,,,14.333580555555555,2025-11-12 19:24:06
|
||||
135,2024-05-14,Amersfoort,52.15,5.39,25.5,15.6,19.9,0.3,24.9,16.0,135.0,,,14.053077777777778,2025-11-12 19:24:06
|
||||
136,2024-05-15,Amersfoort,52.15,5.39,21.8,13.6,16.7,10.1,17.4,7.3,283.0,,,9.994233333333332,2025-11-12 19:24:06
|
||||
137,2024-05-16,Amersfoort,52.15,5.39,20.3,13.6,16.4,5.2,13.9,7.0,222.0,,,8.650844444444445,2025-11-12 19:24:06
|
||||
138,2024-05-17,Amersfoort,52.15,5.39,20.0,12.6,15.9,9.3,17.0,11.3,348.0,,,5.858922222222222,2025-11-12 19:24:06
|
||||
139,2024-05-18,Amersfoort,52.15,5.39,22.0,13.5,17.2,2.4,14.2,7.4,7.0,,,14.609480555555555,2025-11-12 19:24:06
|
||||
140,2024-05-19,Amersfoort,52.15,5.39,20.2,12.2,16.2,27.4,15.2,10.3,352.0,,,14.652172222222221,2025-11-12 19:24:06
|
||||
141,2024-05-20,Amersfoort,52.15,5.39,19.2,12.3,15.7,2.3,14.7,9.9,25.0,,,10.625713888888889,2025-11-12 19:24:06
|
||||
142,2024-05-21,Amersfoort,52.15,5.39,23.0,12.8,17.5,10.5,16.1,10.9,62.0,,,8.399391666666666,2025-11-12 19:24:06
|
||||
143,2024-05-22,Amersfoort,52.15,5.39,18.9,13.2,15.6,14.0,24.0,17.3,224.0,,,6.831730555555556,2025-11-12 19:24:06
|
||||
144,2024-05-23,Amersfoort,52.15,5.39,19.0,11.6,15.4,0.6,20.6,14.9,228.0,,,11.57735,2025-11-12 19:24:06
|
||||
145,2024-05-24,Amersfoort,52.15,5.39,18.5,10.1,15.0,2.7,17.1,7.5,30.0,,,2.8771055555555556,2025-11-12 19:24:06
|
||||
146,2024-05-25,Amersfoort,52.15,5.39,17.8,11.6,15.3,10.7,16.1,10.2,174.0,,,9.360513888888889,2025-11-12 19:24:06
|
||||
147,2024-05-26,Amersfoort,52.15,5.39,21.3,11.4,15.9,4.8,17.7,12.4,155.0,,,12.049502777777777,2025-11-12 19:24:06
|
||||
148,2024-05-27,Amersfoort,52.15,5.39,17.9,11.6,14.5,5.2,17.9,11.9,236.0,,,11.157252777777778,2025-11-12 19:24:06
|
||||
149,2024-05-28,Amersfoort,52.15,5.39,17.5,9.9,13.8,5.8,22.5,15.9,209.0,,,9.723288888888888,2025-11-12 19:24:06
|
||||
150,2024-05-29,Amersfoort,52.15,5.39,17.1,11.4,14.9,15.3,26.5,18.7,234.0,,,10.715091666666668,2025-11-12 19:24:06
|
||||
151,2024-05-30,Amersfoort,52.15,5.39,17.1,10.4,14.0,2.0,18.4,11.1,266.0,,,12.515166666666666,2025-11-12 19:24:06
|
||||
152,2024-05-31,Amersfoort,52.15,5.39,19.1,11.1,15.2,1.7,23.9,12.6,337.0,,,14.489425,2025-11-12 19:24:06
|
||||
153,2024-06-01,Amersfoort,52.15,5.39,18.6,14.1,16.2,4.5,25.1,19.4,349.0,,,1.1127583333333333,2025-11-12 19:24:06
|
||||
154,2024-06-02,Amersfoort,52.15,5.39,17.2,12.8,14.7,0.1,22.0,18.7,347.0,,,10.399033333333332,2025-11-12 19:24:06
|
||||
155,2024-06-03,Amersfoort,52.15,5.39,16.7,10.8,13.8,0.1,12.1,8.5,307.0,,,1.7445694444444444,2025-11-12 19:24:06
|
||||
156,2024-06-04,Amersfoort,52.15,5.39,19.8,10.9,15.8,1.4,22.4,13.4,214.0,,,6.217888888888889,2025-11-12 19:24:06
|
||||
157,2024-06-05,Amersfoort,52.15,5.39,16.1,9.4,13.1,1.2,23.8,15.4,265.0,,,15.004938888888889,2025-11-12 19:24:06
|
||||
158,2024-06-06,Amersfoort,52.15,5.39,16.2,8.2,12.6,0.1,15.1,10.4,256.0,,,12.037016666666668,2025-11-12 19:24:06
|
||||
159,2024-06-07,Amersfoort,52.15,5.39,17.9,6.9,13.0,0.9,22.0,12.1,238.0,,,14.037516666666667,2025-11-12 19:24:06
|
||||
160,2024-06-08,Amersfoort,52.15,5.39,17.5,9.6,13.2,1.5,27.1,16.7,250.0,,,13.754533333333333,2025-11-12 19:24:06
|
||||
161,2024-06-09,Amersfoort,52.15,5.39,16.2,8.1,12.6,0.0,25.6,15.5,264.0,,,14.027544444444445,2025-11-12 19:24:06
|
||||
162,2024-06-10,Amersfoort,52.15,5.39,15.1,9.4,11.4,23.8,41.4,18.7,254.0,,,3.0,2025-11-12 19:24:06
|
||||
163,2024-06-11,Amersfoort,52.15,5.39,14.9,8.4,11.6,3.9,22.0,17.1,282.0,,,15.0,2025-11-12 19:24:06
|
||||
164,2024-06-12,Amersfoort,52.15,5.39,13.8,8.3,11.2,0.9,19.9,13.6,294.0,,,13.421919444444445,2025-11-12 19:24:06
|
||||
165,2024-06-13,Amersfoort,52.15,5.39,17.3,8.5,13.4,0.1,20.9,12.7,209.0,,,9.165716666666667,2025-11-12 19:24:06
|
||||
166,2024-06-14,Amersfoort,52.15,5.39,17.1,12.8,14.9,4.2,25.6,16.4,184.0,,,4.330155555555556,2025-11-12 19:24:06
|
||||
167,2024-06-15,Amersfoort,52.15,5.39,17.1,12.1,14.1,7.2,35.4,24.2,213.0,,,9.682897222222222,2025-11-12 19:24:06
|
||||
168,2024-06-16,Amersfoort,52.15,5.39,17.0,11.4,14.1,2.2,27.9,19.4,201.0,,,13.0588,2025-11-12 19:24:06
|
||||
169,2024-06-17,Amersfoort,52.15,5.39,19.2,11.6,15.5,0.1,20.6,13.2,226.0,,,12.68155,2025-11-12 19:24:06
|
||||
170,2024-06-18,Amersfoort,52.15,5.39,17.6,10.5,14.9,8.5,11.9,7.6,60.0,,,0.3586638888888889,2025-11-12 19:24:06
|
||||
171,2024-06-19,Amersfoort,52.15,5.39,18.5,11.6,15.1,0.0,16.4,13.2,8.0,,,13.892744444444444,2025-11-12 19:24:06
|
||||
172,2024-06-20,Amersfoort,52.15,5.39,20.5,10.0,15.1,3.9,14.2,10.0,52.0,,,9.096969444444445,2025-11-12 19:24:06
|
||||
173,2024-06-21,Amersfoort,52.15,5.39,20.3,13.4,16.1,4.1,19.8,11.8,329.0,,,6.5689166666666665,2025-11-12 19:24:06
|
||||
174,2024-06-22,Amersfoort,52.15,5.39,19.6,12.1,15.8,0.3,20.3,14.1,250.0,,,14.174058333333333,2025-11-12 19:24:06
|
||||
175,2024-06-23,Amersfoort,52.15,5.39,23.0,11.8,17.2,0.3,14.7,8.6,270.0,,,15.160788888888888,2025-11-12 19:24:06
|
||||
176,2024-06-24,Amersfoort,52.15,5.39,24.4,11.6,18.9,0.0,11.3,4.7,54.0,,,15.09006388888889,2025-11-12 19:24:06
|
||||
177,2024-06-25,Amersfoort,52.15,5.39,27.0,15.4,21.5,0.0,14.0,10.7,63.0,,,15.160852777777778,2025-11-12 19:24:06
|
||||
178,2024-06-26,Amersfoort,52.15,5.39,28.4,17.0,23.1,0.0,11.8,8.7,65.0,,,15.126516666666667,2025-11-12 19:24:06
|
||||
179,2024-06-27,Amersfoort,52.15,5.39,27.7,17.6,22.4,0.0,22.1,12.3,248.0,,,15.05626111111111,2025-11-12 19:24:06
|
||||
180,2024-06-28,Amersfoort,52.15,5.39,20.0,13.6,17.1,0.0,24.0,16.6,251.0,,,13.48238611111111,2025-11-12 19:24:06
|
||||
181,2024-06-29,Amersfoort,52.15,5.39,24.5,10.5,18.3,0.1,17.1,7.1,36.0,,,12.952941666666666,2025-11-12 19:24:06
|
||||
182,2024-06-30,Amersfoort,52.15,5.39,21.4,14.5,17.9,2.4,19.9,14.6,314.0,,,11.260358333333334,2025-11-12 19:24:06
|
||||
183,2024-07-01,Amersfoort,52.15,5.39,18.1,12.4,15.3,0.7,19.5,14.8,294.0,,,11.507883333333332,2025-11-12 19:24:06
|
||||
184,2024-07-02,Amersfoort,52.15,5.39,17.0,11.6,14.9,4.3,19.5,14.1,302.0,,,5.323808333333333,2025-11-12 19:24:06
|
||||
185,2024-07-03,Amersfoort,52.15,5.39,16.2,10.2,13.2,5.3,21.5,13.9,228.0,,,5.9421083333333335,2025-11-12 19:24:06
|
||||
186,2024-07-04,Amersfoort,52.15,5.39,17.5,14.1,15.5,2.8,26.2,20.7,254.0,,,11.41503611111111,2025-11-12 19:24:06
|
||||
187,2024-07-05,Amersfoort,52.15,5.39,17.6,12.8,15.5,1.2,27.3,20.8,218.0,,,3.816597222222222,2025-11-12 19:24:06
|
||||
188,2024-07-06,Amersfoort,52.15,5.39,19.2,12.8,16.3,3.5,41.2,24.6,223.0,,,9.272797222222222,2025-11-12 19:24:06
|
||||
189,2024-07-07,Amersfoort,52.15,5.39,17.2,11.3,14.2,6.5,22.7,16.6,218.0,,,9.301958333333333,2025-11-12 19:24:06
|
||||
190,2024-07-08,Amersfoort,52.15,5.39,20.2,11.6,16.3,0.5,15.0,10.9,216.0,,,11.658558333333332,2025-11-12 19:24:06
|
||||
191,2024-07-09,Amersfoort,52.15,5.39,27.7,15.2,21.0,7.1,17.3,11.9,132.0,,,12.195922222222222,2025-11-12 19:24:06
|
||||
192,2024-07-10,Amersfoort,52.15,5.39,21.5,15.4,18.7,3.4,20.8,13.6,231.0,,,12.433847222222221,2025-11-12 19:24:06
|
||||
193,2024-07-11,Amersfoort,52.15,5.39,19.8,13.7,16.8,0.3,20.5,13.4,250.0,,,13.813583333333334,2025-11-12 19:24:06
|
||||
194,2024-07-12,Amersfoort,52.15,5.39,15.9,12.4,14.3,22.3,23.7,16.3,346.0,,,0.2718222222222222,2025-11-12 19:24:06
|
||||
195,2024-07-13,Amersfoort,52.15,5.39,16.6,12.8,14.7,2.1,25.5,19.2,242.0,,,6.902955555555556,2025-11-12 19:24:06
|
||||
196,2024-07-14,Amersfoort,52.15,5.39,19.8,11.9,16.0,0.4,24.1,16.6,227.0,,,13.245730555555555,2025-11-12 19:24:06
|
||||
197,2024-07-15,Amersfoort,52.15,5.39,24.3,11.9,18.6,4.3,13.5,8.7,153.0,,,12.745441666666666,2025-11-12 19:24:06
|
||||
198,2024-07-16,Amersfoort,52.15,5.39,20.4,16.1,17.7,6.4,25.5,19.5,222.0,,,12.860594444444445,2025-11-12 19:24:06
|
||||
199,2024-07-17,Amersfoort,52.15,5.39,21.0,14.0,17.5,1.0,17.7,12.4,273.0,,,14.66846111111111,2025-11-12 19:24:06
|
||||
200,2024-07-18,Amersfoort,52.15,5.39,25.4,11.9,19.3,0.5,11.2,4.1,55.0,,,14.503916666666667,2025-11-12 19:24:06
|
||||
201,2024-07-19,Amersfoort,52.15,5.39,27.5,17.2,22.3,0.2,12.5,8.5,103.0,,,14.081955555555556,2025-11-12 19:24:06
|
||||
202,2024-07-20,Amersfoort,52.15,5.39,29.1,16.6,23.1,0.0,9.8,7.8,145.0,,,13.843508333333332,2025-11-12 19:24:06
|
||||
203,2024-07-21,Amersfoort,52.15,5.39,24.7,16.2,20.6,1.9,21.4,10.4,305.0,,,13.521663888888888,2025-11-12 19:24:06
|
||||
204,2024-07-22,Amersfoort,52.15,5.39,22.4,13.4,18.5,0.9,19.6,12.8,240.0,,,11.522747222222222,2025-11-12 19:24:06
|
||||
205,2024-07-23,Amersfoort,52.15,5.39,20.6,15.2,18.7,7.4,19.8,16.3,254.0,,,8.488563888888889,2025-11-12 19:24:06
|
||||
206,2024-07-24,Amersfoort,52.15,5.39,21.0,13.0,17.4,0.3,14.7,11.1,319.0,,,14.463705555555554,2025-11-12 19:24:06
|
||||
207,2024-07-25,Amersfoort,52.15,5.39,23.5,12.0,18.5,6.3,23.2,12.4,196.0,,,8.450308333333334,2025-11-12 19:24:06
|
||||
208,2024-07-26,Amersfoort,52.15,5.39,21.9,14.9,18.9,3.3,18.5,13.0,245.0,,,6.3871361111111105,2025-11-12 19:24:06
|
||||
209,2024-07-27,Amersfoort,52.15,5.39,22.8,11.4,17.5,0.1,12.8,7.0,255.0,,,8.435730555555557,2025-11-12 19:24:06
|
||||
210,2024-07-28,Amersfoort,52.15,5.39,22.2,14.5,18.2,0.0,14.4,10.8,323.0,,,14.281433333333334,2025-11-12 19:24:06
|
||||
211,2024-07-29,Amersfoort,52.15,5.39,24.9,12.9,19.2,0.0,10.8,8.7,102.0,,,14.307033333333333,2025-11-12 19:24:06
|
||||
212,2024-07-30,Amersfoort,52.15,5.39,28.2,16.0,22.3,0.0,11.6,7.0,48.0,,,13.99721388888889,2025-11-12 19:24:06
|
||||
213,2024-07-31,Amersfoort,52.15,5.39,25.9,16.5,21.1,0.0,12.9,10.3,39.0,,,11.42013611111111,2025-11-12 19:24:06
|
||||
214,2024-08-01,Amersfoort,52.15,5.39,22.8,15.6,19.4,3.7,14.6,10.9,49.0,,,7.639613888888889,2025-11-12 19:24:06
|
||||
215,2024-08-02,Amersfoort,52.15,5.39,23.9,13.6,19.0,0.0,9.2,5.0,59.0,,,13.56251388888889,2025-11-12 19:24:06
|
||||
216,2024-08-03,Amersfoort,52.15,5.39,23.6,16.8,20.1,1.8,20.1,13.0,239.0,,,12.444677777777777,2025-11-12 19:24:06
|
||||
217,2024-08-04,Amersfoort,52.15,5.39,20.5,14.6,17.8,5.2,13.5,10.8,296.0,,,7.3035,2025-11-12 19:24:06
|
||||
218,2024-08-05,Amersfoort,52.15,5.39,22.5,14.4,18.9,0.0,13.2,8.5,201.0,,,13.327325,2025-11-12 19:24:06
|
||||
219,2024-08-06,Amersfoort,52.15,5.39,28.0,14.9,21.5,0.0,14.8,10.1,182.0,,,13.713658333333333,2025-11-12 19:24:06
|
||||
220,2024-08-07,Amersfoort,52.15,5.39,22.9,15.9,19.5,4.3,19.5,11.6,261.0,,,11.598788888888889,2025-11-12 19:24:06
|
||||
221,2024-08-08,Amersfoort,52.15,5.39,22.9,16.0,19.4,0.1,20.2,14.4,221.0,,,13.083025,2025-11-12 19:24:06
|
||||
222,2024-08-09,Amersfoort,52.15,5.39,22.9,16.6,20.2,3.3,27.3,20.9,235.0,,,7.250913888888889,2025-11-12 19:24:06
|
||||
223,2024-08-10,Amersfoort,52.15,5.39,23.4,14.9,19.1,0.0,19.3,13.9,244.0,,,11.504155555555556,2025-11-12 19:24:06
|
||||
224,2024-08-11,Amersfoort,52.15,5.39,25.8,16.2,21.1,0.0,17.0,6.8,28.0,,,13.568644444444445,2025-11-12 19:24:06
|
||||
225,2024-08-12,Amersfoort,52.15,5.39,30.0,16.5,23.3,0.0,16.0,12.9,103.0,,,13.537747222222222,2025-11-12 19:24:06
|
||||
226,2024-08-13,Amersfoort,52.15,5.39,29.6,20.5,23.4,9.9,19.5,10.1,170.0,,,10.0,2025-11-12 19:24:06
|
||||
227,2024-08-14,Amersfoort,52.15,5.39,26.3,18.5,21.0,3.2,12.0,7.1,315.0,,,5.399961111111112,2025-11-12 19:24:06
|
||||
228,2024-08-15,Amersfoort,52.15,5.39,24.7,17.4,20.9,0.2,27.3,15.0,235.0,,,12.2278,2025-11-12 19:24:06
|
||||
229,2024-08-16,Amersfoort,52.15,5.39,21.0,16.9,19.4,14.0,20.9,13.4,230.0,,,,2025-11-12 19:24:06
|
||||
230,2024-08-17,Amersfoort,52.15,5.39,23.0,16.2,19.2,0.1,12.6,7.7,36.0,,,12.089147222222222,2025-11-12 19:24:06
|
||||
231,2024-08-18,Amersfoort,52.15,5.39,23.3,14.2,18.5,0.0,18.3,9.8,317.0,,,11.094747222222221,2025-11-12 19:24:06
|
||||
232,2024-08-19,Amersfoort,52.15,5.39,22.2,12.1,17.7,0.0,11.2,8.3,197.0,,,12.557372222222222,2025-11-12 19:24:06
|
||||
233,2024-08-20,Amersfoort,52.15,5.39,24.1,14.7,18.8,18.5,22.5,15.6,205.0,,,9.028616666666666,2025-11-12 19:24:06
|
||||
234,2024-08-21,Amersfoort,52.15,5.39,18.6,13.4,16.3,0.0,25.7,18.5,256.0,,,12.446333333333333,2025-11-12 19:24:06
|
||||
235,2024-08-22,Amersfoort,52.15,5.39,22.3,14.1,18.4,0.0,29.8,22.0,210.0,,,10.85095,2025-11-12 19:24:06
|
||||
236,2024-08-23,Amersfoort,52.15,5.39,22.0,15.6,19.6,1.7,43.8,22.8,218.0,,,8.168794444444444,2025-11-12 19:24:06
|
||||
237,2024-08-24,Amersfoort,52.15,5.39,26.4,15.7,20.3,3.2,33.7,21.9,202.0,,,10.21606388888889,2025-11-12 19:24:06
|
||||
238,2024-08-25,Amersfoort,52.15,5.39,19.2,13.1,16.2,1.5,25.1,18.5,234.0,,,12.789308333333334,2025-11-12 19:24:06
|
||||
239,2024-08-26,Amersfoort,52.15,5.39,20.5,13.3,16.6,0.0,21.3,15.7,213.0,,,12.763472222222223,2025-11-12 19:24:06
|
||||
240,2024-08-27,Amersfoort,52.15,5.39,24.0,12.0,17.9,0.0,11.8,8.7,159.0,,,12.737555555555554,2025-11-12 19:24:06
|
||||
241,2024-08-28,Amersfoort,52.15,5.39,27.8,13.1,20.5,0.0,15.1,9.4,139.0,,,12.711561111111111,2025-11-12 19:24:06
|
||||
242,2024-08-29,Amersfoort,52.15,5.39,25.1,15.1,20.4,0.0,16.7,10.6,261.0,,,12.651597222222222,2025-11-12 19:24:06
|
||||
243,2024-08-30,Amersfoort,52.15,5.39,22.0,13.9,17.8,0.0,18.7,10.5,23.0,,,10.929366666666667,2025-11-12 19:24:06
|
||||
244,2024-08-31,Amersfoort,52.15,5.39,23.4,14.4,18.7,0.5,24.2,19.6,60.0,,,12.090858333333331,2025-11-12 19:24:06
|
||||
245,2024-09-01,Amersfoort,52.15,5.39,28.6,16.1,22.3,0.0,17.3,15.1,87.0,,,12.462316666666666,2025-11-12 19:24:06
|
||||
246,2024-09-02,Amersfoort,52.15,5.39,28.2,17.2,22.1,8.1,15.1,7.1,194.0,,,11.401702777777777,2025-11-12 19:24:06
|
||||
247,2024-09-03,Amersfoort,52.15,5.39,24.3,17.0,20.3,9.8,15.5,6.8,208.0,,,6.786961111111111,2025-11-12 19:24:06
|
||||
248,2024-09-04,Amersfoort,52.15,5.39,20.8,14.6,18.3,2.9,9.0,5.8,200.0,,,3.7849305555555555,2025-11-12 19:24:06
|
||||
249,2024-09-05,Amersfoort,52.15,5.39,27.7,14.1,21.7,0.0,25.2,17.8,55.0,,,9.705936111111113,2025-11-12 19:24:06
|
||||
250,2024-09-06,Amersfoort,52.15,5.39,25.6,18.6,21.9,2.5,21.1,15.0,94.0,,,9.523100000000001,2025-11-12 19:24:06
|
||||
251,2024-09-07,Amersfoort,52.15,5.39,25.4,16.5,20.7,0.0,15.7,8.6,126.0,,,10.516166666666665,2025-11-12 19:24:06
|
||||
252,2024-09-08,Amersfoort,52.15,5.39,21.7,15.4,19.0,0.0,21.4,13.7,188.0,,,11.779436111111112,2025-11-12 19:24:06
|
||||
253,2024-09-09,Amersfoort,52.15,5.39,20.3,13.2,16.2,2.5,22.2,11.4,299.0,,,8.611491666666666,2025-11-12 19:24:06
|
||||
254,2024-09-10,Amersfoort,52.15,5.39,16.9,12.2,14.5,10.6,32.1,22.4,228.0,,,4.056241666666667,2025-11-12 19:24:06
|
||||
255,2024-09-11,Amersfoort,52.15,5.39,14.4,8.2,11.2,14.0,25.4,16.6,264.0,,,11.114052777777777,2025-11-12 19:24:06
|
||||
256,2024-09-12,Amersfoort,52.15,5.39,14.7,6.8,10.2,2.6,12.3,9.4,273.0,,,11.326069444444444,2025-11-12 19:24:06
|
||||
257,2024-09-13,Amersfoort,52.15,5.39,15.9,8.1,11.7,0.1,21.7,12.8,342.0,,,11.30346111111111,2025-11-12 19:24:06
|
||||
258,2024-09-14,Amersfoort,52.15,5.39,16.1,6.8,11.5,0.0,12.7,7.5,304.0,,,9.4487,2025-11-12 19:24:06
|
||||
259,2024-09-15,Amersfoort,52.15,5.39,18.4,8.1,13.0,0.1,12.0,8.4,240.0,,,6.312736111111111,2025-11-12 19:24:06
|
||||
260,2024-09-16,Amersfoort,52.15,5.39,18.7,9.8,14.4,0.7,21.3,12.1,343.0,,,8.635602777777777,2025-11-12 19:24:06
|
||||
261,2024-09-17,Amersfoort,52.15,5.39,19.6,12.4,15.9,0.4,24.5,17.8,33.0,,,9.479969444444444,2025-11-12 19:24:06
|
||||
262,2024-09-18,Amersfoort,52.15,5.39,21.2,12.8,16.9,0.0,19.6,17.2,52.0,,,11.051127777777777,2025-11-12 19:24:06
|
||||
263,2024-09-19,Amersfoort,52.15,5.39,22.5,14.4,17.7,0.0,19.7,15.9,60.0,,,11.014030555555555,2025-11-12 19:24:06
|
||||
264,2024-09-20,Amersfoort,52.15,5.39,22.0,13.9,17.5,0.0,19.5,16.0,78.0,,,11.000427777777778,2025-11-12 19:24:06
|
||||
265,2024-09-21,Amersfoort,52.15,5.39,23.2,12.4,17.3,0.0,14.6,9.1,95.0,,,11.0,2025-11-12 19:24:06
|
||||
266,2024-09-22,Amersfoort,52.15,5.39,22.9,11.6,17.4,0.0,10.5,7.0,109.0,,,8.633738888888889,2025-11-12 19:24:06
|
||||
267,2024-09-23,Amersfoort,52.15,5.39,20.5,13.8,16.7,1.0,17.4,11.6,185.0,,,9.372266666666668,2025-11-12 19:24:06
|
||||
268,2024-09-24,Amersfoort,52.15,5.39,18.9,11.6,14.7,1.2,22.3,15.1,217.0,,,9.726208333333332,2025-11-12 19:24:06
|
||||
269,2024-09-25,Amersfoort,52.15,5.39,17.2,12.9,14.5,2.4,20.8,15.7,207.0,,,4.112369444444445,2025-11-12 19:24:06
|
||||
270,2024-09-26,Amersfoort,52.15,5.39,18.5,13.7,15.5,14.7,32.7,22.4,205.0,,,8.175252777777779,2025-11-12 19:24:06
|
||||
271,2024-09-27,Amersfoort,52.15,5.39,13.9,11.1,12.4,16.9,38.7,29.3,230.0,,,3.209036111111111,2025-11-12 19:24:06
|
||||
272,2024-09-28,Amersfoort,52.15,5.39,13.5,7.8,10.5,0.6,20.2,13.8,300.0,,,10.68738611111111,2025-11-12 19:24:06
|
||||
273,2024-09-29,Amersfoort,52.15,5.39,13.9,5.9,10.1,0.0,18.0,10.9,157.0,,,6.180494444444444,2025-11-12 19:24:06
|
||||
274,2024-09-30,Amersfoort,52.15,5.39,14.6,8.2,11.7,7.0,27.2,22.7,145.0,,,4.817711111111111,2025-11-12 19:24:06
|
||||
275,2024-10-01,Amersfoort,52.15,5.39,14.4,12.1,13.1,6.9,31.4,19.5,203.0,,,,2025-11-12 19:24:06
|
||||
276,2024-10-02,Amersfoort,52.15,5.39,12.9,8.8,11.3,0.6,20.4,14.1,47.0,,,,2025-11-12 19:24:06
|
||||
277,2024-10-03,Amersfoort,52.15,5.39,14.1,6.4,10.0,0.0,22.7,13.7,36.0,,,10.348588888888889,2025-11-12 19:24:06
|
||||
278,2024-10-04,Amersfoort,52.15,5.39,14.5,4.3,9.0,0.0,9.8,7.8,52.0,,,9.531908333333334,2025-11-12 19:24:06
|
||||
279,2024-10-05,Amersfoort,52.15,5.39,15.0,3.0,8.7,0.0,15.2,9.2,113.0,,,10.210816666666668,2025-11-12 19:24:06
|
||||
280,2024-10-06,Amersfoort,52.15,5.39,15.0,6.4,10.6,0.1,23.5,16.9,134.0,,,9.820322222222224,2025-11-12 19:24:06
|
||||
281,2024-10-07,Amersfoort,52.15,5.39,17.8,12.8,14.5,3.4,25.2,16.4,195.0,,,9.613169444444445,2025-11-12 19:24:06
|
||||
282,2024-10-08,Amersfoort,52.15,5.39,17.6,13.2,15.4,3.7,21.4,17.9,191.0,,,5.874536111111111,2025-11-12 19:24:06
|
||||
283,2024-10-09,Amersfoort,52.15,5.39,16.0,12.4,13.7,7.7,25.0,16.2,179.0,,,2.5366972222222226,2025-11-12 19:24:06
|
||||
284,2024-10-10,Amersfoort,52.15,5.39,14.0,8.2,11.8,2.8,24.3,15.9,313.0,,,8.940194444444444,2025-11-12 19:24:06
|
||||
285,2024-10-11,Amersfoort,52.15,5.39,11.9,5.2,8.5,0.1,13.7,8.9,252.0,,,9.49976388888889,2025-11-12 19:24:06
|
||||
286,2024-10-12,Amersfoort,52.15,5.39,12.4,5.1,8.7,5.4,26.0,14.5,166.0,,,2.269327777777778,2025-11-12 19:24:06
|
||||
287,2024-10-13,Amersfoort,52.15,5.39,12.6,7.4,10.1,2.3,27.8,19.5,272.0,,,7.472544444444444,2025-11-12 19:24:06
|
||||
288,2024-10-14,Amersfoort,52.15,5.39,11.4,4.3,7.8,0.4,10.3,7.3,111.0,,,2.0347805555555554,2025-11-12 19:24:06
|
||||
289,2024-10-15,Amersfoort,52.15,5.39,14.4,4.8,9.3,0.0,21.1,15.6,105.0,,,9.276555555555555,2025-11-12 19:24:06
|
||||
290,2024-10-16,Amersfoort,52.15,5.39,20.7,10.6,15.4,0.0,24.0,20.7,133.0,,,7.227944444444444,2025-11-12 19:24:06
|
||||
291,2024-10-17,Amersfoort,52.15,5.39,19.4,13.8,16.3,0.9,24.7,15.3,190.0,,,3.5560944444444447,2025-11-12 19:24:06
|
||||
292,2024-10-18,Amersfoort,52.15,5.39,17.7,12.6,15.0,1.7,9.6,5.5,339.0,,,3.3183527777777777,2025-11-12 19:24:06
|
||||
293,2024-10-19,Amersfoort,52.15,5.39,16.2,12.3,14.3,1.1,22.1,12.1,207.0,,,2.0877833333333333,2025-11-12 19:24:06
|
||||
294,2024-10-20,Amersfoort,52.15,5.39,17.6,13.4,15.7,0.6,35.1,23.3,189.0,,,3.681163888888889,2025-11-12 19:24:06
|
||||
295,2024-10-21,Amersfoort,52.15,5.39,17.5,12.2,14.3,3.8,26.5,14.0,225.0,,,,2025-11-12 19:24:06
|
||||
296,2024-10-22,Amersfoort,52.15,5.39,14.9,8.8,11.6,4.8,20.7,13.3,246.0,,,8.904438888888889,2025-11-12 19:24:06
|
||||
297,2024-10-23,Amersfoort,52.15,5.39,15.5,8.1,11.0,0.4,11.8,8.4,193.0,,,8.85461111111111,2025-11-12 19:24:06
|
||||
298,2024-10-24,Amersfoort,52.15,5.39,13.9,6.7,10.4,0.0,14.1,12.2,135.0,,,8.828208333333333,2025-11-12 19:24:06
|
||||
299,2024-10-25,Amersfoort,52.15,5.39,18.5,9.6,13.5,1.0,16.7,11.2,161.0,,,8.780308333333334,2025-11-12 19:24:06
|
||||
300,2024-10-26,Amersfoort,52.15,5.39,18.9,10.8,13.9,0.0,11.2,9.0,144.0,,,8.744158333333333,2025-11-12 19:24:06
|
||||
301,2024-10-27,Amersfoort,52.15,5.39,15.8,8.7,12.8,0.2,13.8,9.3,266.0,,,8.509825,2025-11-12 19:24:06
|
||||
302,2024-10-28,Amersfoort,52.15,5.39,14.2,8.8,11.8,2.5,22.1,17.3,217.0,,,0.7035611111111112,2025-11-12 19:24:06
|
||||
303,2024-10-29,Amersfoort,52.15,5.39,14.9,12.5,13.2,1.7,18.5,14.3,222.0,,,,2025-11-12 19:24:06
|
||||
304,2024-10-30,Amersfoort,52.15,5.39,14.3,10.3,12.6,0.3,7.7,5.1,309.0,,,2.3296888888888887,2025-11-12 19:24:06
|
||||
305,2024-10-31,Amersfoort,52.15,5.39,14.9,8.4,10.4,0.0,12.1,6.7,227.0,,,5.493519444444444,2025-11-12 19:24:06
|
||||
306,2024-11-01,Amersfoort,52.15,5.39,11.9,7.9,9.9,0.0,16.2,11.9,229.0,,,,2025-11-12 19:24:06
|
||||
307,2024-11-02,Amersfoort,52.15,5.39,12.4,7.3,10.8,0.0,13.1,9.8,55.0,,,4.008308333333333,2025-11-12 19:24:06
|
||||
308,2024-11-03,Amersfoort,52.15,5.39,12.3,1.9,6.4,0.0,9.1,6.6,88.0,,,8.220369444444446,2025-11-12 19:24:06
|
||||
309,2024-11-04,Amersfoort,52.15,5.39,11.6,3.4,6.9,0.0,14.4,10.8,93.0,,,8.154408333333333,2025-11-12 19:24:06
|
||||
310,2024-11-05,Amersfoort,52.15,5.39,10.9,3.8,6.3,0.0,11.8,8.9,157.0,,,8.089152777777779,2025-11-12 19:24:06
|
||||
311,2024-11-06,Amersfoort,52.15,5.39,11.2,4.8,7.9,0.0,6.9,4.6,184.0,,,2.198827777777778,2025-11-12 19:24:06
|
||||
312,2024-11-07,Amersfoort,52.15,5.39,7.8,5.7,6.5,0.0,13.1,9.8,102.0,,,0.5686416666666666,2025-11-12 19:24:06
|
||||
313,2024-11-08,Amersfoort,52.15,5.39,5.9,4.0,4.8,0.0,14.2,11.3,103.0,,,0.4726972222222222,2025-11-12 19:24:06
|
||||
314,2024-11-09,Amersfoort,52.15,5.39,8.1,4.7,6.7,0.4,9.1,5.8,132.0,,,,2025-11-12 19:24:06
|
||||
315,2024-11-10,Amersfoort,52.15,5.39,10.9,5.4,8.0,0.0,10.6,6.5,212.0,,,2.2662444444444443,2025-11-12 19:24:06
|
||||
316,2024-11-11,Amersfoort,52.15,5.39,11.8,6.6,9.4,3.3,27.1,18.5,313.0,,,6.489427777777777,2025-11-12 19:24:06
|
||||
317,2024-11-12,Amersfoort,52.15,5.39,10.3,4.2,8.1,0.2,25.2,15.3,35.0,,,5.035963888888889,2025-11-12 19:24:06
|
||||
318,2024-11-13,Amersfoort,52.15,5.39,11.2,3.5,7.6,0.0,12.0,6.9,315.0,,,0.6432805555555555,2025-11-12 19:24:06
|
||||
319,2024-11-14,Amersfoort,52.15,5.39,11.2,8.7,9.9,0.1,15.5,9.8,317.0,,,2.4494555555555557,2025-11-12 19:24:06
|
||||
320,2024-11-15,Amersfoort,52.15,5.39,11.1,7.7,8.9,0.0,13.6,8.0,228.0,,,1.572527777777778,2025-11-12 19:24:06
|
||||
321,2024-11-16,Amersfoort,52.15,5.39,9.9,7.3,8.5,1.4,20.0,17.6,216.0,,,1.6364750000000001,2025-11-12 19:24:06
|
||||
322,2024-11-17,Amersfoort,52.15,5.39,9.3,3.0,6.8,10.2,21.2,15.6,266.0,,,6.640036111111112,2025-11-12 19:24:06
|
||||
323,2024-11-18,Amersfoort,52.15,5.39,7.8,2.0,4.4,7.9,15.7,10.7,249.0,,,6.735558333333333,2025-11-12 19:24:06
|
||||
324,2024-11-19,Amersfoort,52.15,5.39,5.1,1.5,3.4,13.8,18.7,13.5,29.0,,,,2025-11-12 19:24:06
|
||||
325,2024-11-20,Amersfoort,52.15,5.39,3.5,-1.9,1.6,0.8,22.9,14.1,266.0,,,,2025-11-12 19:24:06
|
||||
326,2024-11-21,Amersfoort,52.15,5.39,3.9,-0.9,0.9,2.2,18.1,12.3,253.0,,,7.026886111111112,2025-11-12 19:24:06
|
||||
327,2024-11-22,Amersfoort,52.15,5.39,3.6,-0.8,1.3,11.8,24.7,17.2,245.0,,,1.8006472222222223,2025-11-12 19:24:06
|
||||
328,2024-11-23,Amersfoort,52.15,5.39,8.4,0.9,3.6,8.4,33.1,22.3,196.0,,,,2025-11-12 19:24:06
|
||||
329,2024-11-24,Amersfoort,52.15,5.39,16.9,8.5,13.9,2.1,34.6,31.8,203.0,,,5.364188888888889,2025-11-12 19:24:06
|
||||
330,2024-11-25,Amersfoort,52.15,5.39,16.4,8.0,12.8,6.0,33.6,24.2,207.0,,,,2025-11-12 19:24:06
|
||||
331,2024-11-26,Amersfoort,52.15,5.39,9.4,4.6,7.0,1.6,21.3,16.0,220.0,,,3.7482444444444445,2025-11-12 19:24:06
|
||||
332,2024-11-27,Amersfoort,52.15,5.39,11.0,3.5,7.3,7.1,38.8,22.9,205.0,,,,2025-11-12 19:24:06
|
||||
333,2024-11-28,Amersfoort,52.15,5.39,9.2,2.8,6.6,0.0,21.8,13.9,303.0,,,6.776136111111112,2025-11-12 19:24:06
|
||||
334,2024-11-29,Amersfoort,52.15,5.39,6.6,-0.9,2.4,0.0,14.7,8.5,155.0,,,6.733066666666667,2025-11-12 19:24:06
|
||||
335,2024-11-30,Amersfoort,52.15,5.39,5.9,0.2,3.2,0.0,15.0,12.4,172.0,,,6.691241666666667,2025-11-12 19:24:06
|
||||
336,2024-12-01,Amersfoort,52.15,5.39,8.3,1.2,5.6,0.0,20.6,15.0,178.0,,,6.650736111111112,2025-11-12 19:24:06
|
||||
337,2024-12-02,Amersfoort,52.15,5.39,10.9,6.3,8.9,3.1,21.4,17.8,215.0,,,3.184813888888889,2025-11-12 19:24:06
|
||||
338,2024-12-03,Amersfoort,52.15,5.39,7.6,2.8,5.7,1.3,21.2,13.4,303.0,,,6.573947222222222,2025-11-12 19:24:06
|
||||
339,2024-12-04,Amersfoort,52.15,5.39,5.8,1.9,4.0,0.3,12.9,9.2,223.0,,,1.0620972222222222,2025-11-12 19:24:06
|
||||
340,2024-12-05,Amersfoort,52.15,5.39,9.8,3.9,6.2,15.2,31.7,23.2,187.0,,,,2025-11-12 19:24:06
|
||||
341,2024-12-06,Amersfoort,52.15,5.39,10.1,3.7,8.0,10.9,37.3,26.2,278.0,,,4.307430555555555,2025-11-12 19:24:06
|
||||
342,2024-12-07,Amersfoort,52.15,5.39,10.1,4.4,7.5,4.6,32.3,25.3,185.0,,,5.423994444444444,2025-11-12 19:24:06
|
||||
343,2024-12-08,Amersfoort,52.15,5.39,7.4,4.3,6.1,0.7,20.5,16.5,49.0,,,4.355783333333333,2025-11-12 19:24:06
|
||||
344,2024-12-09,Amersfoort,52.15,5.39,6.2,4.7,5.7,0.4,28.2,21.9,36.0,,,,2025-11-12 19:24:06
|
||||
345,2024-12-10,Amersfoort,52.15,5.39,5.7,4.6,5.1,0.0,20.7,16.8,42.0,,,,2025-11-12 19:24:06
|
||||
346,2024-12-11,Amersfoort,52.15,5.39,4.6,1.7,3.7,0.0,12.5,8.4,37.0,,,,2025-11-12 19:24:06
|
||||
347,2024-12-12,Amersfoort,52.15,5.39,5.6,3.0,3.8,0.5,9.6,5.7,198.0,,,,2025-11-12 19:24:06
|
||||
348,2024-12-13,Amersfoort,52.15,5.39,3.1,0.6,2.0,0.0,12.0,9.1,144.0,,,3.8963055555555557,2025-11-12 19:24:06
|
||||
349,2024-12-14,Amersfoort,52.15,5.39,5.4,0.2,3.4,1.2,17.3,14.1,234.0,,,,2025-11-12 19:24:06
|
||||
350,2024-12-15,Amersfoort,52.15,5.39,10.4,3.2,7.2,0.0,22.4,18.3,241.0,,,,2025-11-12 19:24:06
|
||||
351,2024-12-16,Amersfoort,52.15,5.39,10.7,8.9,10.1,0.0,23.3,21.8,249.0,,,,2025-11-12 19:24:06
|
||||
352,2024-12-17,Amersfoort,52.15,5.39,9.1,6.2,7.9,0.0,20.0,16.3,219.0,,,,2025-11-12 19:24:06
|
||||
353,2024-12-18,Amersfoort,52.15,5.39,13.1,6.3,10.4,0.2,33.1,26.1,214.0,,,,2025-11-12 19:24:06
|
||||
354,2024-12-19,Amersfoort,52.15,5.39,12.1,3.8,7.9,13.8,36.9,24.7,257.0,,,,2025-11-12 19:24:06
|
||||
355,2024-12-20,Amersfoort,52.15,5.39,6.9,3.7,5.3,0.6,22.7,17.2,246.0,,,5.573419444444445,2025-11-12 19:24:06
|
||||
356,2024-12-21,Amersfoort,52.15,5.39,9.5,6.4,7.5,9.3,29.0,22.8,226.0,,,,2025-11-12 19:24:06
|
||||
357,2024-12-22,Amersfoort,52.15,5.39,8.2,2.3,4.6,8.3,25.3,20.6,259.0,,,4.3009861111111105,2025-11-12 19:24:06
|
||||
358,2024-12-23,Amersfoort,52.15,5.39,7.9,2.0,5.6,2.2,26.1,18.9,313.0,,,6.23005,2025-11-12 19:24:06
|
||||
359,2024-12-24,Amersfoort,52.15,5.39,7.8,2.7,4.9,1.8,17.0,12.4,212.0,,,,2025-11-12 19:24:06
|
||||
360,2024-12-25,Amersfoort,52.15,5.39,9.6,7.8,8.6,0.0,10.3,8.9,215.0,,,,2025-11-12 19:24:06
|
||||
361,2024-12-26,Amersfoort,52.15,5.39,8.9,3.1,7.2,0.0,9.6,6.0,161.0,,,,2025-11-12 19:24:06
|
||||
362,2024-12-27,Amersfoort,52.15,5.39,4.8,-1.5,1.9,0.0,9.4,4.5,143.0,,,5.568280555555556,2025-11-12 19:24:06
|
||||
363,2024-12-28,Amersfoort,52.15,5.39,2.5,-0.6,0.7,0.0,8.5,5.8,220.0,,,0.13342222222222222,2025-11-12 19:24:06
|
||||
364,2024-12-29,Amersfoort,52.15,5.39,4.7,1.0,3.3,0.0,17.4,14.0,216.0,,,,2025-11-12 19:24:06
|
||||
365,2024-12-30,Amersfoort,52.15,5.39,7.8,4.7,6.1,0.0,24.4,19.3,221.0,,,,2025-11-12 19:24:06
|
||||
366,2024-12-31,Amersfoort,52.15,5.39,7.2,2.2,4.4,0.0,30.5,22.2,206.0,,,,2025-11-12 19:24:06
|
||||
|
8785
amersfoort_2024_uurlijks.csv
Normal file
8785
amersfoort_2024_uurlijks.csv
Normal file
File diff suppressed because it is too large
Load Diff
316
amersfoort_2025_dagelijks.csv
Normal file
316
amersfoort_2025_dagelijks.csv
Normal file
@@ -0,0 +1,316 @@
|
||||
id,datum,locatie,latitude,longitude,temp_max,temp_min,temp_gem,neerslag,wind_max,wind_gem,wind_richting,luchtvochtigheid_gem,bewolking_gem,zonuren,toegevoegd_op
|
||||
1,2025-01-01,Amersfoort,52.15,5.39,8.6,3.2,7.2,13.5,37.4,31.0,221.0,,,,2025-11-12 20:35:25
|
||||
2,2025-01-02,Amersfoort,52.15,5.39,5.5,1.4,3.3,1.5,22.5,11.1,276.0,,,6.389716666666667,2025-11-12 20:35:25
|
||||
3,2025-01-03,Amersfoort,52.15,5.39,4.2,-0.6,1.5,5.0,23.1,13.6,265.0,,,4.805941666666667,2025-11-12 20:35:25
|
||||
4,2025-01-04,Amersfoort,52.15,5.39,3.0,-1.0,0.7,0.4,15.0,10.4,207.0,,,,2025-11-12 20:35:25
|
||||
5,2025-01-05,Amersfoort,52.15,5.39,11.1,0.2,4.7,18.9,29.5,21.2,176.0,,,,2025-11-12 20:35:25
|
||||
6,2025-01-06,Amersfoort,52.15,5.39,12.1,4.1,9.1,4.3,43.0,31.3,209.0,,,,2025-11-12 20:35:25
|
||||
7,2025-01-07,Amersfoort,52.15,5.39,4.5,1.9,3.4,1.4,24.5,20.5,224.0,,,5.001047222222223,2025-11-12 20:35:25
|
||||
8,2025-01-08,Amersfoort,52.15,5.39,4.8,1.1,2.4,0.7,18.6,12.4,227.0,,,4.538833333333333,2025-11-12 20:35:25
|
||||
9,2025-01-09,Amersfoort,52.15,5.39,4.4,0.4,1.7,10.7,18.4,11.2,304.0,,,4.003011111111111,2025-11-12 20:35:25
|
||||
10,2025-01-10,Amersfoort,52.15,5.39,4.1,-2.9,0.9,8.1,20.5,12.4,260.0,,,6.366880555555555,2025-11-12 20:35:25
|
||||
11,2025-01-11,Amersfoort,52.15,5.39,3.8,-3.3,0.0,0.0,14.0,8.1,301.0,,,6.533616666666667,2025-11-12 20:35:25
|
||||
12,2025-01-12,Amersfoort,52.15,5.39,4.9,-0.1,1.7,0.0,9.4,6.3,312.0,,,3.1618638888888886,2025-11-12 20:35:25
|
||||
13,2025-01-13,Amersfoort,52.15,5.39,3.8,-2.8,0.4,0.0,12.1,7.7,188.0,,,6.7112,2025-11-12 20:35:25
|
||||
14,2025-01-14,Amersfoort,52.15,5.39,5.8,-3.0,1.9,0.0,16.5,12.9,223.0,,,2.175875,2025-11-12 20:35:25
|
||||
15,2025-01-15,Amersfoort,52.15,5.39,7.0,5.2,6.0,0.0,10.1,5.3,282.0,,,,2025-11-12 20:35:25
|
||||
16,2025-01-16,Amersfoort,52.15,5.39,5.6,1.0,4.2,0.0,11.7,7.7,171.0,,,,2025-11-12 20:35:25
|
||||
17,2025-01-17,Amersfoort,52.15,5.39,2.5,-1.0,0.7,0.0,7.3,4.7,185.0,,,0.38149722222222227,2025-11-12 20:35:25
|
||||
18,2025-01-18,Amersfoort,52.15,5.39,1.9,-2.7,-0.7,0.0,8.6,5.7,99.0,,,4.445641666666667,2025-11-12 20:35:25
|
||||
19,2025-01-19,Amersfoort,52.15,5.39,0.4,-2.7,-1.4,0.0,6.6,4.5,199.0,,,3.10815,2025-11-12 20:35:25
|
||||
20,2025-01-20,Amersfoort,52.15,5.39,0.7,-2.2,-0.6,0.0,11.5,7.9,204.0,,,,2025-11-12 20:35:25
|
||||
21,2025-01-21,Amersfoort,52.15,5.39,2.6,-1.6,0.0,0.0,12.1,9.5,177.0,,,3.793186111111111,2025-11-12 20:35:25
|
||||
22,2025-01-22,Amersfoort,52.15,5.39,3.3,-1.0,1.2,6.9,14.9,10.6,165.0,,,0.15923055555555557,2025-11-12 20:35:25
|
||||
23,2025-01-23,Amersfoort,52.15,5.39,6.2,0.9,4.5,3.9,29.3,19.1,227.0,,,5.212683333333334,2025-11-12 20:35:25
|
||||
24,2025-01-24,Amersfoort,52.15,5.39,9.1,4.8,7.1,3.9,33.0,23.4,205.0,,,,2025-11-12 20:35:25
|
||||
25,2025-01-25,Amersfoort,52.15,5.39,8.8,2.0,5.4,7.6,19.0,7.7,227.0,,,3.0,2025-11-12 20:35:25
|
||||
26,2025-01-26,Amersfoort,52.15,5.39,5.8,1.9,3.4,2.7,28.6,13.4,162.0,,,6.89585,2025-11-12 20:35:25
|
||||
27,2025-01-27,Amersfoort,52.15,5.39,10.6,7.1,8.7,4.5,31.9,24.4,195.0,,,6.711936111111111,2025-11-12 20:35:25
|
||||
28,2025-01-28,Amersfoort,52.15,5.39,8.9,6.2,7.5,3.3,26.8,22.9,180.0,,,1.8615388888888889,2025-11-12 20:35:25
|
||||
29,2025-01-29,Amersfoort,52.15,5.39,8.1,4.9,6.7,3.4,27.7,19.2,239.0,,,6.337297222222222,2025-11-12 20:35:25
|
||||
30,2025-01-30,Amersfoort,52.15,5.39,6.4,1.8,4.6,5.2,13.0,8.1,309.0,,,,2025-11-12 20:35:25
|
||||
31,2025-01-31,Amersfoort,52.15,5.39,6.2,-0.9,1.8,0.0,12.2,8.7,207.0,,,7.762066666666667,2025-11-12 20:35:25
|
||||
32,2025-02-01,Amersfoort,52.15,5.39,5.6,-2.8,0.2,0.0,8.0,5.7,137.0,,,7.806069444444444,2025-11-12 20:35:25
|
||||
33,2025-02-02,Amersfoort,52.15,5.39,3.6,-3.5,-1.0,0.0,8.7,6.1,139.0,,,7.863583333333334,2025-11-12 20:35:25
|
||||
34,2025-02-03,Amersfoort,52.15,5.39,5.8,-3.2,0.1,0.0,11.3,7.7,195.0,,,7.906266666666667,2025-11-12 20:35:25
|
||||
35,2025-02-04,Amersfoort,52.15,5.39,4.7,1.1,2.4,0.0,17.8,15.0,194.0,,,0.9065666666666666,2025-11-12 20:35:25
|
||||
36,2025-02-05,Amersfoort,52.15,5.39,8.6,1.8,4.3,0.0,17.3,10.5,240.0,,,6.8480888888888884,2025-11-12 20:35:25
|
||||
37,2025-02-06,Amersfoort,52.15,5.39,6.6,0.6,2.8,0.0,16.7,9.9,43.0,,,3.9700305555555557,2025-11-12 20:35:25
|
||||
38,2025-02-07,Amersfoort,52.15,5.39,4.6,0.6,2.8,0.0,31.7,22.8,81.0,,,0.9229388888888889,2025-11-12 20:35:25
|
||||
39,2025-02-08,Amersfoort,52.15,5.39,7.3,2.0,4.0,0.0,18.9,12.7,109.0,,,2.3177499999999998,2025-11-12 20:35:25
|
||||
40,2025-02-09,Amersfoort,52.15,5.39,5.9,0.8,3.1,0.1,15.0,9.6,66.0,,,5.833991666666666,2025-11-12 20:35:25
|
||||
41,2025-02-10,Amersfoort,52.15,5.39,2.9,-0.6,1.3,2.1,23.0,19.5,73.0,,,3.036,2025-11-12 20:35:25
|
||||
42,2025-02-11,Amersfoort,52.15,5.39,4.2,1.1,3.0,12.7,25.2,17.5,125.0,,,,2025-11-12 20:35:25
|
||||
43,2025-02-12,Amersfoort,52.15,5.39,5.4,2.4,3.5,2.1,7.6,4.6,191.0,,,0.85065,2025-11-12 20:35:25
|
||||
44,2025-02-13,Amersfoort,52.15,5.39,2.5,-1.6,0.5,1.1,16.6,11.3,24.0,,,5.629847222222223,2025-11-12 20:35:25
|
||||
45,2025-02-14,Amersfoort,52.15,5.39,3.3,-2.3,0.4,0.0,7.8,5.2,48.0,,,4.336636111111111,2025-11-12 20:35:25
|
||||
46,2025-02-15,Amersfoort,52.15,5.39,3.0,-1.2,0.9,0.3,7.7,5.3,109.0,,,2.7039833333333334,2025-11-12 20:35:25
|
||||
47,2025-02-16,Amersfoort,52.15,5.39,3.5,-2.5,0.3,0.0,21.1,13.8,76.0,,,8.562255555555556,2025-11-12 20:35:25
|
||||
48,2025-02-17,Amersfoort,52.15,5.39,3.5,-4.9,-1.8,0.0,10.4,8.6,76.0,,,8.943205555555556,2025-11-12 20:35:25
|
||||
49,2025-02-18,Amersfoort,52.15,5.39,3.3,-4.8,-1.4,0.0,17.0,13.3,98.0,,,8.63316111111111,2025-11-12 20:35:25
|
||||
50,2025-02-19,Amersfoort,52.15,5.39,4.8,-1.9,0.8,0.0,19.2,16.5,125.0,,,8.017963888888888,2025-11-12 20:35:25
|
||||
51,2025-02-20,Amersfoort,52.15,5.39,10.3,0.3,5.9,0.1,17.9,15.5,180.0,,,,2025-11-12 20:35:25
|
||||
52,2025-02-21,Amersfoort,52.15,5.39,17.0,8.2,12.2,0.1,21.8,16.8,173.0,,,8.621022222222223,2025-11-12 20:35:25
|
||||
53,2025-02-22,Amersfoort,52.15,5.39,12.2,8.2,10.4,3.5,22.9,16.3,192.0,,,1.1035472222222222,2025-11-12 20:35:25
|
||||
54,2025-02-23,Amersfoort,52.15,5.39,13.9,6.2,9.5,0.0,22.7,16.2,203.0,,,7.544122222222223,2025-11-12 20:35:25
|
||||
55,2025-02-24,Amersfoort,52.15,5.39,11.6,8.2,10.6,3.2,24.6,21.4,202.0,,,,2025-11-12 20:35:25
|
||||
56,2025-02-25,Amersfoort,52.15,5.39,11.0,4.8,7.9,7.3,15.5,10.4,219.0,,,5.525411111111111,2025-11-12 20:35:25
|
||||
57,2025-02-26,Amersfoort,52.15,5.39,10.2,3.8,6.9,2.4,27.0,13.6,216.0,,,8.719333333333333,2025-11-12 20:35:25
|
||||
58,2025-02-27,Amersfoort,52.15,5.39,7.5,2.8,5.2,1.3,23.0,12.8,242.0,,,7.186672222222223,2025-11-12 20:35:25
|
||||
59,2025-02-28,Amersfoort,52.15,5.39,8.1,2.0,4.6,0.9,16.9,12.4,354.0,,,7.063325000000001,2025-11-12 20:35:25
|
||||
60,2025-03-01,Amersfoort,52.15,5.39,7.2,0.3,3.9,0.0,11.1,7.3,18.0,,,3.8756694444444446,2025-11-12 20:35:25
|
||||
61,2025-03-02,Amersfoort,52.15,5.39,7.8,-1.9,1.7,0.0,5.4,1.8,45.0,,,8.292408333333332,2025-11-12 20:35:25
|
||||
62,2025-03-03,Amersfoort,52.15,5.39,9.7,-5.0,1.7,0.0,6.3,3.3,241.0,,,9.801952777777778,2025-11-12 20:35:25
|
||||
63,2025-03-04,Amersfoort,52.15,5.39,10.5,-3.0,2.3,0.0,10.0,4.7,214.0,,,9.548830555555556,2025-11-12 20:35:25
|
||||
64,2025-03-05,Amersfoort,52.15,5.39,13.8,-0.4,5.2,0.0,14.2,9.3,210.0,,,9.954013888888888,2025-11-12 20:35:25
|
||||
65,2025-03-06,Amersfoort,52.15,5.39,15.8,0.6,6.9,0.0,12.4,9.4,179.0,,,10.0165,2025-11-12 20:35:25
|
||||
66,2025-03-07,Amersfoort,52.15,5.39,16.9,4.4,9.3,0.0,13.9,9.9,166.0,,,10.057669444444445,2025-11-12 20:35:25
|
||||
67,2025-03-08,Amersfoort,52.15,5.39,18.4,3.0,9.6,0.0,12.8,9.4,113.0,,,10.177941666666666,2025-11-12 20:35:25
|
||||
68,2025-03-09,Amersfoort,52.15,5.39,17.5,2.8,9.2,0.0,10.3,7.8,88.0,,,10.281258333333334,2025-11-12 20:35:25
|
||||
69,2025-03-10,Amersfoort,52.15,5.39,16.2,1.5,7.9,0.0,11.4,8.4,25.0,,,10.374108333333334,2025-11-12 20:35:25
|
||||
70,2025-03-11,Amersfoort,52.15,5.39,7.8,2.8,5.2,0.0,15.7,11.8,331.0,,,1.679186111111111,2025-11-12 20:35:25
|
||||
71,2025-03-12,Amersfoort,52.15,5.39,7.8,0.3,3.8,0.8,13.1,8.8,274.0,,,9.194855555555556,2025-11-12 20:35:25
|
||||
72,2025-03-13,Amersfoort,52.15,5.39,7.5,-2.0,2.5,0.4,16.6,8.2,341.0,,,10.311355555555554,2025-11-12 20:35:25
|
||||
73,2025-03-14,Amersfoort,52.15,5.39,6.4,-1.4,2.0,1.2,14.9,9.8,7.0,,,10.548477777777777,2025-11-12 20:35:25
|
||||
74,2025-03-15,Amersfoort,52.15,5.39,6.8,-1.4,2.9,0.1,19.3,14.8,38.0,,,6.952102777777777,2025-11-12 20:35:25
|
||||
75,2025-03-16,Amersfoort,52.15,5.39,8.3,-1.8,3.3,0.0,16.4,11.1,13.0,,,9.62753611111111,2025-11-12 20:35:25
|
||||
76,2025-03-17,Amersfoort,52.15,5.39,8.9,0.6,4.4,0.0,19.6,13.1,65.0,,,10.741683333333333,2025-11-12 20:35:25
|
||||
77,2025-03-18,Amersfoort,52.15,5.39,9.9,-1.6,3.7,0.0,16.6,12.4,100.0,,,10.831691666666666,2025-11-12 20:35:25
|
||||
78,2025-03-19,Amersfoort,52.15,5.39,15.1,-0.8,6.7,0.0,10.6,9.2,146.0,,,10.903608333333333,2025-11-12 20:35:25
|
||||
79,2025-03-20,Amersfoort,52.15,5.39,17.2,2.9,9.5,0.0,9.0,6.1,172.0,,,10.924205555555556,2025-11-12 20:35:25
|
||||
80,2025-03-21,Amersfoort,52.15,5.39,20.4,5.7,12.5,0.0,24.2,15.0,107.0,,,10.940008333333333,2025-11-12 20:35:25
|
||||
81,2025-03-22,Amersfoort,52.15,5.39,17.6,10.3,13.6,0.0,19.3,15.4,112.0,,,9.979000000000001,2025-11-12 20:35:25
|
||||
82,2025-03-23,Amersfoort,52.15,5.39,15.7,8.3,11.3,2.1,13.8,8.3,133.0,,,10.87676111111111,2025-11-12 20:35:25
|
||||
83,2025-03-24,Amersfoort,52.15,5.39,14.8,5.2,9.6,0.0,14.2,9.6,328.0,,,10.909666666666668,2025-11-12 20:35:25
|
||||
84,2025-03-25,Amersfoort,52.15,5.39,12.9,3.5,8.0,0.7,15.3,10.7,272.0,,,8.731069444444444,2025-11-12 20:35:25
|
||||
85,2025-03-26,Amersfoort,52.15,5.39,10.8,3.9,7.6,0.3,15.6,10.4,352.0,,,5.047569444444444,2025-11-12 20:35:25
|
||||
86,2025-03-27,Amersfoort,52.15,5.39,14.2,-0.6,6.7,0.0,8.3,5.3,199.0,,,11.518005555555556,2025-11-12 20:35:25
|
||||
87,2025-03-28,Amersfoort,52.15,5.39,12.3,2.5,7.8,1.7,14.9,11.2,237.0,,,9.001855555555556,2025-11-12 20:35:25
|
||||
88,2025-03-29,Amersfoort,52.15,5.39,11.9,4.2,7.8,0.0,13.9,11.1,294.0,,,11.574555555555555,2025-11-12 20:35:25
|
||||
89,2025-03-30,Amersfoort,52.15,5.39,12.0,5.4,9.4,0.7,32.9,24.9,284.0,,,9.156066666666666,2025-11-12 20:35:25
|
||||
90,2025-03-31,Amersfoort,52.15,5.39,11.3,4.3,8.0,0.0,17.8,14.1,347.0,,,11.630727777777778,2025-11-12 20:35:25
|
||||
91,2025-04-01,Amersfoort,52.15,5.39,13.4,1.7,7.5,0.0,20.9,12.3,68.0,,,11.713336111111111,2025-11-12 20:35:25
|
||||
92,2025-04-02,Amersfoort,52.15,5.39,16.0,4.9,10.2,0.0,24.6,17.2,74.0,,,11.792805555555555,2025-11-12 20:35:25
|
||||
93,2025-04-03,Amersfoort,52.15,5.39,18.9,8.1,12.9,0.0,17.5,14.3,95.0,,,11.880769444444443,2025-11-12 20:35:25
|
||||
94,2025-04-04,Amersfoort,52.15,5.39,20.4,4.7,12.6,0.0,16.1,9.4,53.0,,,12.005941666666667,2025-11-12 20:35:25
|
||||
95,2025-04-05,Amersfoort,52.15,5.39,14.8,4.8,9.4,0.0,20.2,15.1,43.0,,,12.079180555555556,2025-11-12 20:35:25
|
||||
96,2025-04-06,Amersfoort,52.15,5.39,11.5,3.2,7.0,0.0,17.2,14.1,77.0,,,12.222027777777779,2025-11-12 20:35:25
|
||||
97,2025-04-07,Amersfoort,52.15,5.39,12.9,-0.1,6.8,0.0,14.6,8.0,58.0,,,12.297808333333334,2025-11-12 20:35:25
|
||||
98,2025-04-08,Amersfoort,52.15,5.39,15.3,1.2,8.1,0.0,17.4,9.2,31.0,,,12.362827777777778,2025-11-12 20:35:25
|
||||
99,2025-04-09,Amersfoort,52.15,5.39,12.5,3.0,7.2,0.0,20.1,13.2,358.0,,,11.231972222222222,2025-11-12 20:35:25
|
||||
100,2025-04-10,Amersfoort,52.15,5.39,12.8,6.2,9.1,0.0,17.1,12.2,330.0,,,12.189225,2025-11-12 20:35:25
|
||||
101,2025-04-11,Amersfoort,52.15,5.39,17.3,2.8,10.1,0.0,13.5,8.8,282.0,,,12.555919444444443,2025-11-12 20:35:25
|
||||
102,2025-04-12,Amersfoort,52.15,5.39,20.9,5.2,13.8,0.0,20.5,13.1,125.0,,,12.619486111111112,2025-11-12 20:35:25
|
||||
103,2025-04-13,Amersfoort,52.15,5.39,17.0,9.9,14.0,2.2,23.3,16.0,222.0,,,10.609116666666667,2025-11-12 20:35:25
|
||||
104,2025-04-14,Amersfoort,52.15,5.39,16.1,8.6,12.2,0.4,16.2,10.4,185.0,,,11.793455555555557,2025-11-12 20:35:25
|
||||
105,2025-04-15,Amersfoort,52.15,5.39,20.7,9.5,14.1,2.7,16.4,12.2,138.0,,,10.356219444444445,2025-11-12 20:35:25
|
||||
106,2025-04-16,Amersfoort,52.15,5.39,11.2,8.4,10.3,1.9,13.7,8.9,208.0,,,,2025-11-12 20:35:25
|
||||
107,2025-04-17,Amersfoort,52.15,5.39,11.4,7.8,9.3,3.1,11.5,6.7,302.0,,,,2025-11-12 20:35:25
|
||||
108,2025-04-18,Amersfoort,52.15,5.39,14.1,6.8,9.5,0.1,10.8,5.7,349.0,,,5.480369444444445,2025-11-12 20:35:25
|
||||
109,2025-04-19,Amersfoort,52.15,5.39,14.4,3.9,9.1,0.0,13.3,9.5,34.0,,,12.897941666666666,2025-11-12 20:35:25
|
||||
110,2025-04-20,Amersfoort,52.15,5.39,15.4,3.9,9.6,0.5,12.4,8.8,18.0,,,12.097116666666667,2025-11-12 20:35:25
|
||||
111,2025-04-21,Amersfoort,52.15,5.39,15.4,8.6,11.5,18.3,8.5,4.9,144.0,,,4.2790083333333335,2025-11-12 20:35:25
|
||||
112,2025-04-22,Amersfoort,52.15,5.39,15.9,7.9,11.7,0.5,15.1,9.0,246.0,,,7.982066666666666,2025-11-12 20:35:25
|
||||
113,2025-04-23,Amersfoort,52.15,5.39,15.9,7.7,11.4,4.9,13.1,7.3,74.0,,,5.6112166666666665,2025-11-12 20:35:25
|
||||
114,2025-04-24,Amersfoort,52.15,5.39,11.6,8.6,10.5,12.9,19.5,14.4,19.0,,,,2025-11-12 20:35:25
|
||||
115,2025-04-25,Amersfoort,52.15,5.39,14.4,7.2,10.2,0.0,13.9,10.7,9.0,,,12.419186111111111,2025-11-12 20:35:25
|
||||
116,2025-04-26,Amersfoort,52.15,5.39,18.2,4.8,11.5,0.0,12.3,8.7,72.0,,,13.145544444444445,2025-11-12 20:35:25
|
||||
117,2025-04-27,Amersfoort,52.15,5.39,19.1,7.2,12.9,0.0,10.8,7.8,48.0,,,13.210894444444445,2025-11-12 20:35:25
|
||||
118,2025-04-28,Amersfoort,52.15,5.39,19.5,5.7,13.0,0.0,12.4,6.5,10.0,,,13.03216111111111,2025-11-12 20:35:25
|
||||
119,2025-04-29,Amersfoort,52.15,5.39,21.8,6.4,14.6,0.0,14.3,7.5,24.0,,,13.257861111111112,2025-11-12 20:35:25
|
||||
120,2025-04-30,Amersfoort,52.15,5.39,24.8,9.4,17.2,0.0,9.0,6.1,54.0,,,13.356655555555555,2025-11-12 20:35:25
|
||||
121,2025-05-01,Amersfoort,52.15,5.39,26.2,9.9,19.1,0.0,11.8,6.8,161.0,,,13.083919444444444,2025-11-12 20:35:25
|
||||
122,2025-05-02,Amersfoort,52.15,5.39,25.5,11.1,18.1,0.0,16.3,8.7,328.0,,,13.50375,2025-11-12 20:35:25
|
||||
123,2025-05-03,Amersfoort,52.15,5.39,18.6,8.1,12.9,0.0,22.5,12.4,347.0,,,12.875019444444444,2025-11-12 20:35:25
|
||||
124,2025-05-04,Amersfoort,52.15,5.39,13.4,7.1,10.4,0.3,20.0,15.3,336.0,,,11.063902777777779,2025-11-12 20:35:25
|
||||
125,2025-05-05,Amersfoort,52.15,5.39,14.7,3.6,9.5,0.1,21.1,13.8,28.0,,,12.177336111111112,2025-11-12 20:35:25
|
||||
126,2025-05-06,Amersfoort,52.15,5.39,14.2,4.5,9.6,0.3,23.4,15.2,10.0,,,5.073877777777778,2025-11-12 20:35:25
|
||||
127,2025-05-07,Amersfoort,52.15,5.39,16.2,5.6,11.0,0.1,22.3,13.8,13.0,,,11.249980555555556,2025-11-12 20:35:25
|
||||
128,2025-05-08,Amersfoort,52.15,5.39,17.6,5.4,12.4,0.0,16.3,10.8,47.0,,,13.681155555555556,2025-11-12 20:35:25
|
||||
129,2025-05-09,Amersfoort,52.15,5.39,19.2,5.4,13.4,0.0,17.0,11.5,65.0,,,14.094399999999998,2025-11-12 20:35:25
|
||||
130,2025-05-10,Amersfoort,52.15,5.39,22.1,6.7,15.4,0.0,16.4,10.4,85.0,,,14.219475000000001,2025-11-12 20:35:25
|
||||
131,2025-05-11,Amersfoort,52.15,5.39,23.6,10.1,17.8,0.0,18.0,12.1,115.0,,,14.275475,2025-11-12 20:35:25
|
||||
132,2025-05-12,Amersfoort,52.15,5.39,23.8,12.9,18.6,0.0,17.2,14.5,97.0,,,14.324133333333332,2025-11-12 20:35:25
|
||||
133,2025-05-13,Amersfoort,52.15,5.39,22.9,10.8,17.3,0.0,16.6,13.2,72.0,,,14.372152777777778,2025-11-12 20:35:25
|
||||
134,2025-05-14,Amersfoort,52.15,5.39,19.8,8.8,14.3,0.0,20.7,13.5,0.0,,,14.419483333333334,2025-11-12 20:35:25
|
||||
135,2025-05-15,Amersfoort,52.15,5.39,18.9,9.8,14.3,0.0,21.7,16.4,5.0,,,12.235933333333334,2025-11-12 20:35:25
|
||||
136,2025-05-16,Amersfoort,52.15,5.39,18.0,5.4,12.2,0.0,20.2,13.2,337.0,,,14.511891666666665,2025-11-12 20:35:25
|
||||
137,2025-05-17,Amersfoort,52.15,5.39,18.3,7.0,13.2,0.0,18.3,12.7,337.0,,,14.556866666666666,2025-11-12 20:35:25
|
||||
138,2025-05-18,Amersfoort,52.15,5.39,18.5,11.0,14.4,0.3,15.5,10.7,349.0,,,13.63486111111111,2025-11-12 20:35:25
|
||||
139,2025-05-19,Amersfoort,52.15,5.39,21.5,6.0,14.6,0.0,17.7,9.1,26.0,,,14.644102777777777,2025-11-12 20:35:25
|
||||
140,2025-05-20,Amersfoort,52.15,5.39,20.6,8.4,15.0,0.0,16.9,10.6,350.0,,,14.686252777777778,2025-11-12 20:35:25
|
||||
141,2025-05-21,Amersfoort,52.15,5.39,18.1,7.3,13.0,0.4,20.6,12.8,304.0,,,12.748755555555555,2025-11-12 20:35:25
|
||||
142,2025-05-22,Amersfoort,52.15,5.39,14.0,8.4,11.2,0.2,24.0,17.2,318.0,,,13.702113888888888,2025-11-12 20:35:25
|
||||
143,2025-05-23,Amersfoort,52.15,5.39,12.7,6.9,10.1,1.7,24.7,16.5,293.0,,,14.670077777777777,2025-11-12 20:35:25
|
||||
144,2025-05-24,Amersfoort,52.15,5.39,14.8,6.8,11.2,5.6,23.3,16.5,204.0,,,0.09984166666666666,2025-11-12 20:35:25
|
||||
145,2025-05-25,Amersfoort,52.15,5.39,19.0,11.8,15.2,6.5,27.2,18.4,239.0,,,10.0,2025-11-12 20:35:25
|
||||
146,2025-05-26,Amersfoort,52.15,5.39,18.0,11.8,14.7,0.7,25.4,17.1,242.0,,,13.631316666666667,2025-11-12 20:35:25
|
||||
147,2025-05-27,Amersfoort,52.15,5.39,17.6,12.1,14.3,23.0,31.5,24.1,222.0,,,3.0,2025-11-12 20:35:25
|
||||
148,2025-05-28,Amersfoort,52.15,5.39,16.0,9.9,14.1,10.9,29.1,18.1,267.0,,,9.37395,2025-11-12 20:35:25
|
||||
149,2025-05-29,Amersfoort,52.15,5.39,19.5,8.0,13.7,0.9,26.2,14.0,217.0,,,3.335711111111111,2025-11-12 20:35:25
|
||||
150,2025-05-30,Amersfoort,52.15,5.39,21.7,13.9,17.3,0.2,20.7,14.6,243.0,,,11.325694444444444,2025-11-12 20:35:25
|
||||
151,2025-05-31,Amersfoort,52.15,5.39,24.7,10.8,18.5,0.5,11.2,5.7,200.0,,,13.317133333333333,2025-11-12 20:35:25
|
||||
152,2025-06-01,Amersfoort,52.15,5.39,19.9,13.9,17.1,6.0,23.3,16.2,243.0,,,14.137594444444444,2025-11-12 20:35:25
|
||||
153,2025-06-02,Amersfoort,52.15,5.39,18.9,11.1,14.7,0.4,17.8,11.9,257.0,,,14.660741666666667,2025-11-12 20:35:25
|
||||
154,2025-06-03,Amersfoort,52.15,5.39,22.4,8.7,16.4,0.0,27.9,16.6,204.0,,,13.968275,2025-11-12 20:35:25
|
||||
155,2025-06-04,Amersfoort,52.15,5.39,18.9,12.4,16.0,0.6,22.1,14.7,222.0,,,10.217133333333333,2025-11-12 20:35:25
|
||||
156,2025-06-05,Amersfoort,52.15,5.39,17.7,11.1,14.5,6.0,23.0,16.4,200.0,,,7.901652777777778,2025-11-12 20:35:25
|
||||
157,2025-06-06,Amersfoort,52.15,5.39,18.4,13.0,15.1,12.7,25.8,19.9,234.0,,,13.634841666666667,2025-11-12 20:35:25
|
||||
158,2025-06-07,Amersfoort,52.15,5.39,15.9,11.6,13.5,8.5,21.9,15.1,222.0,,,7.758430555555555,2025-11-12 20:35:25
|
||||
159,2025-06-08,Amersfoort,52.15,5.39,14.3,10.1,12.6,17.3,30.2,21.1,269.0,,,14.037827777777778,2025-11-12 20:35:25
|
||||
160,2025-06-09,Amersfoort,52.15,5.39,17.8,10.1,14.2,1.4,14.8,12.2,233.0,,,13.109825,2025-11-12 20:35:25
|
||||
161,2025-06-10,Amersfoort,52.15,5.39,17.3,10.4,14.3,1.3,28.4,18.2,253.0,,,5.475499999999999,2025-11-12 20:35:25
|
||||
162,2025-06-11,Amersfoort,52.15,5.39,20.4,7.9,14.5,0.0,12.6,6.6,36.0,,,15.090816666666667,2025-11-12 20:35:25
|
||||
163,2025-06-12,Amersfoort,52.15,5.39,25.1,11.3,18.7,0.0,21.5,16.4,101.0,,,15.092194444444445,2025-11-12 20:35:25
|
||||
164,2025-06-13,Amersfoort,52.15,5.39,31.0,17.4,24.6,0.4,15.2,9.0,122.0,,,15.06573611111111,2025-11-12 20:35:25
|
||||
165,2025-06-14,Amersfoort,52.15,5.39,30.5,18.4,23.9,1.1,18.0,11.4,209.0,,,11.177774999999999,2025-11-12 20:35:25
|
||||
166,2025-06-15,Amersfoort,52.15,5.39,22.0,14.5,18.1,0.0,18.0,12.0,269.0,,,14.134805555555557,2025-11-12 20:35:25
|
||||
167,2025-06-16,Amersfoort,52.15,5.39,23.0,12.5,18.0,0.1,16.4,9.8,280.0,,,15.12515,2025-11-12 20:35:25
|
||||
168,2025-06-17,Amersfoort,52.15,5.39,25.6,10.1,18.7,0.0,15.2,7.2,254.0,,,13.653652777777777,2025-11-12 20:35:25
|
||||
169,2025-06-18,Amersfoort,52.15,5.39,26.0,12.3,19.3,0.0,17.1,9.7,293.0,,,15.097105555555556,2025-11-12 20:35:25
|
||||
170,2025-06-19,Amersfoort,52.15,5.39,23.9,12.6,18.8,0.0,14.3,8.9,14.0,,,15.158058333333335,2025-11-12 20:35:25
|
||||
171,2025-06-20,Amersfoort,52.15,5.39,26.2,11.8,19.8,0.0,12.4,8.9,82.0,,,15.0,2025-11-12 20:35:25
|
||||
172,2025-06-21,Amersfoort,52.15,5.39,29.3,13.9,22.8,0.0,11.6,9.0,127.0,,,15.190380555555556,2025-11-12 20:35:25
|
||||
173,2025-06-22,Amersfoort,52.15,5.39,28.1,19.0,23.0,1.0,21.5,15.3,223.0,,,12.757183333333334,2025-11-12 20:35:25
|
||||
174,2025-06-23,Amersfoort,52.15,5.39,19.8,16.1,18.2,1.2,30.9,22.2,255.0,,,10.608458333333333,2025-11-12 20:35:25
|
||||
175,2025-06-24,Amersfoort,52.15,5.39,21.4,13.8,17.9,0.1,30.8,20.6,235.0,,,7.1074166666666665,2025-11-12 20:35:25
|
||||
176,2025-06-25,Amersfoort,52.15,5.39,25.1,16.8,21.1,0.0,18.6,13.2,258.0,,,13.409994444444445,2025-11-12 20:35:25
|
||||
177,2025-06-26,Amersfoort,52.15,5.39,22.9,18.1,20.1,5.6,28.8,17.4,234.0,,,9.0,2025-11-12 20:35:25
|
||||
178,2025-06-27,Amersfoort,52.15,5.39,22.1,14.9,18.5,3.1,21.5,12.2,248.0,,,11.546025,2025-11-12 20:35:25
|
||||
179,2025-06-28,Amersfoort,52.15,5.39,25.5,17.2,21.4,0.2,21.3,17.2,242.0,,,11.225341666666667,2025-11-12 20:35:25
|
||||
180,2025-06-29,Amersfoort,52.15,5.39,27.8,17.8,22.2,0.0,16.9,12.3,301.0,,,15.100469444444444,2025-11-12 20:35:25
|
||||
181,2025-06-30,Amersfoort,52.15,5.39,29.8,14.2,22.8,0.0,11.2,9.2,98.0,,,15.151227777777777,2025-11-12 20:35:25
|
||||
182,2025-07-01,Amersfoort,52.15,5.39,34.7,18.2,27.7,0.0,12.0,8.8,140.0,,,15.018591666666667,2025-11-12 20:35:25
|
||||
183,2025-07-02,Amersfoort,52.15,5.39,35.1,16.5,24.5,11.3,22.1,9.9,272.0,,,12.458825,2025-11-12 20:35:25
|
||||
184,2025-07-03,Amersfoort,52.15,5.39,21.0,13.9,17.6,0.0,17.4,13.1,316.0,,,15.05501388888889,2025-11-12 20:35:25
|
||||
185,2025-07-04,Amersfoort,52.15,5.39,23.6,10.2,18.0,0.0,16.5,9.8,240.0,,,15.071061111111112,2025-11-12 20:35:25
|
||||
186,2025-07-05,Amersfoort,52.15,5.39,21.4,15.2,18.4,0.9,25.8,17.8,232.0,,,3.817041666666667,2025-11-12 20:35:25
|
||||
187,2025-07-06,Amersfoort,52.15,5.39,19.2,14.2,17.3,18.0,18.8,13.0,219.0,,,2.9192666666666667,2025-11-12 20:35:25
|
||||
188,2025-07-07,Amersfoort,52.15,5.39,18.0,13.1,15.4,1.9,24.4,15.7,319.0,,,14.390336111111111,2025-11-12 20:35:25
|
||||
189,2025-07-08,Amersfoort,52.15,5.39,18.6,12.0,14.9,1.2,20.1,13.4,292.0,,,9.65778888888889,2025-11-12 20:35:25
|
||||
190,2025-07-09,Amersfoort,52.15,5.39,21.9,12.7,17.3,0.2,12.4,8.9,299.0,,,14.335466666666667,2025-11-12 20:35:25
|
||||
191,2025-07-10,Amersfoort,52.15,5.39,23.8,11.2,18.0,0.0,15.5,8.6,341.0,,,13.257769444444445,2025-11-12 20:35:25
|
||||
192,2025-07-11,Amersfoort,52.15,5.39,23.5,13.1,19.0,0.0,16.9,11.6,355.0,,,14.880091666666667,2025-11-12 20:35:25
|
||||
193,2025-07-12,Amersfoort,52.15,5.39,25.9,14.1,20.0,0.0,22.2,13.0,347.0,,,13.68773611111111,2025-11-12 20:35:25
|
||||
194,2025-07-13,Amersfoort,52.15,5.39,23.6,15.5,20.1,2.0,9.4,6.2,341.0,,,11.07631388888889,2025-11-12 20:35:25
|
||||
195,2025-07-14,Amersfoort,52.15,5.39,24.2,14.8,19.4,19.5,15.7,8.3,266.0,,,12.408633333333334,2025-11-12 20:35:25
|
||||
196,2025-07-15,Amersfoort,52.15,5.39,21.2,16.0,18.9,1.2,19.0,14.8,243.0,,,13.821875,2025-11-12 20:35:25
|
||||
197,2025-07-16,Amersfoort,52.15,5.39,18.9,14.1,16.6,14.2,21.6,14.6,265.0,,,12.05177222222222,2025-11-12 20:35:25
|
||||
198,2025-07-17,Amersfoort,52.15,5.39,22.0,12.9,17.7,0.0,13.3,9.3,305.0,,,13.726577777777777,2025-11-12 20:35:25
|
||||
199,2025-07-18,Amersfoort,52.15,5.39,24.9,11.6,19.2,0.0,11.4,4.9,78.0,,,14.410247222222223,2025-11-12 20:35:25
|
||||
200,2025-07-19,Amersfoort,52.15,5.39,28.8,16.4,22.7,1.8,19.3,12.7,120.0,,,11.611869444444446,2025-11-12 20:35:25
|
||||
201,2025-07-20,Amersfoort,52.15,5.39,26.6,17.6,20.5,7.0,19.8,10.2,181.0,,,8.405911111111111,2025-11-12 20:35:25
|
||||
202,2025-07-21,Amersfoort,52.15,5.39,24.8,15.4,19.1,1.8,18.9,13.1,182.0,,,12.979441666666666,2025-11-12 20:35:25
|
||||
203,2025-07-22,Amersfoort,52.15,5.39,21.6,14.6,17.9,18.9,19.5,14.4,249.0,,,12.234041666666668,2025-11-12 20:35:25
|
||||
204,2025-07-23,Amersfoort,52.15,5.39,22.4,15.8,18.4,5.2,13.2,10.4,262.0,,,8.199219444444443,2025-11-12 20:35:25
|
||||
205,2025-07-24,Amersfoort,52.15,5.39,22.7,13.7,18.5,1.0,12.4,7.2,301.0,,,14.50716388888889,2025-11-12 20:35:25
|
||||
206,2025-07-25,Amersfoort,52.15,5.39,21.8,15.2,18.6,1.8,14.4,9.8,341.0,,,11.615913888888889,2025-11-12 20:35:25
|
||||
207,2025-07-26,Amersfoort,52.15,5.39,24.2,12.8,18.8,0.8,14.0,8.6,241.0,,,12.166672222222221,2025-11-12 20:35:25
|
||||
208,2025-07-27,Amersfoort,52.15,5.39,20.0,14.8,17.9,3.4,15.1,10.9,335.0,,,9.612769444444444,2025-11-12 20:35:25
|
||||
209,2025-07-28,Amersfoort,52.15,5.39,20.0,13.7,16.8,2.1,19.0,12.5,306.0,,,13.485441666666667,2025-11-12 20:35:25
|
||||
210,2025-07-29,Amersfoort,52.15,5.39,21.5,13.2,17.0,0.2,16.4,10.5,289.0,,,13.155475,2025-11-12 20:35:25
|
||||
211,2025-07-30,Amersfoort,52.15,5.39,20.0,12.7,16.9,0.2,20.9,13.1,288.0,,,12.300452777777776,2025-11-12 20:35:25
|
||||
212,2025-07-31,Amersfoort,52.15,5.39,22.2,14.9,17.9,2.9,20.1,12.9,274.0,,,10.99566111111111,2025-11-12 20:35:25
|
||||
213,2025-08-01,Amersfoort,52.15,5.39,18.5,14.2,16.2,7.6,20.0,13.2,288.0,,,7.922177777777778,2025-11-12 20:35:25
|
||||
214,2025-08-02,Amersfoort,52.15,5.39,18.9,13.9,15.9,8.8,20.4,15.2,304.0,,,10.281530555555555,2025-11-12 20:35:25
|
||||
215,2025-08-03,Amersfoort,52.15,5.39,21.7,14.2,17.8,3.0,21.0,16.0,252.0,,,11.435849999999999,2025-11-12 20:35:25
|
||||
216,2025-08-04,Amersfoort,52.15,5.39,22.9,15.4,19.4,4.6,25.5,16.3,238.0,,,5.970066666666667,2025-11-12 20:35:25
|
||||
217,2025-08-05,Amersfoort,52.15,5.39,19.0,14.4,17.0,0.8,25.6,15.8,270.0,,,13.750697222222223,2025-11-12 20:35:25
|
||||
218,2025-08-06,Amersfoort,52.15,5.39,20.4,12.8,16.5,0.0,18.8,11.1,254.0,,,13.146613888888888,2025-11-12 20:35:25
|
||||
219,2025-08-07,Amersfoort,52.15,5.39,23.0,13.2,18.4,0.0,22.6,11.5,206.0,,,12.530247222222222,2025-11-12 20:35:25
|
||||
220,2025-08-08,Amersfoort,52.15,5.39,23.4,15.0,19.4,1.2,14.8,11.0,251.0,,,10.755758333333334,2025-11-12 20:35:25
|
||||
221,2025-08-09,Amersfoort,52.15,5.39,23.5,9.9,17.0,0.0,18.5,8.0,252.0,,,11.6356,2025-11-12 20:35:25
|
||||
222,2025-08-10,Amersfoort,52.15,5.39,23.9,12.1,18.1,0.0,12.8,7.7,308.0,,,13.605916666666667,2025-11-12 20:35:25
|
||||
223,2025-08-11,Amersfoort,52.15,5.39,26.9,11.9,19.8,0.0,9.7,5.5,78.0,,,13.575919444444445,2025-11-12 20:35:25
|
||||
224,2025-08-12,Amersfoort,52.15,5.39,29.5,14.9,22.7,0.0,13.4,9.6,94.0,,,13.546547222222221,2025-11-12 20:35:25
|
||||
225,2025-08-13,Amersfoort,52.15,5.39,30.8,16.0,24.1,0.0,10.6,5.5,217.0,,,13.0,2025-11-12 20:35:25
|
||||
226,2025-08-14,Amersfoort,52.15,5.39,31.0,18.9,23.7,0.0,18.1,8.1,275.0,,,11.605227777777777,2025-11-12 20:35:25
|
||||
227,2025-08-15,Amersfoort,52.15,5.39,26.6,14.6,20.7,0.0,16.8,9.0,325.0,,,13.191880555555555,2025-11-12 20:35:25
|
||||
228,2025-08-16,Amersfoort,52.15,5.39,20.4,14.6,18.5,0.0,17.6,13.1,5.0,,,6.319086111111111,2025-11-12 20:35:25
|
||||
229,2025-08-17,Amersfoort,52.15,5.39,19.7,10.8,15.9,0.2,14.8,8.3,352.0,,,0.3315,2025-11-12 20:35:25
|
||||
230,2025-08-18,Amersfoort,52.15,5.39,24.5,14.8,19.2,0.0,13.0,8.9,53.0,,,12.68628611111111,2025-11-12 20:35:25
|
||||
231,2025-08-19,Amersfoort,52.15,5.39,26.2,13.3,19.1,0.0,23.2,12.7,27.0,,,13.062797222222223,2025-11-12 20:35:25
|
||||
232,2025-08-20,Amersfoort,52.15,5.39,22.7,13.2,17.8,0.0,16.4,12.2,22.0,,,10.004088888888889,2025-11-12 20:35:25
|
||||
233,2025-08-21,Amersfoort,52.15,5.39,20.1,11.9,16.1,0.2,23.3,14.7,3.0,,,11.661372222222223,2025-11-12 20:35:25
|
||||
234,2025-08-22,Amersfoort,52.15,5.39,18.1,12.4,15.5,0.1,16.2,10.9,309.0,,,9.290911111111111,2025-11-12 20:35:25
|
||||
235,2025-08-23,Amersfoort,52.15,5.39,18.1,11.8,15.1,1.1,16.0,11.6,330.0,,,12.846538888888889,2025-11-12 20:35:25
|
||||
236,2025-08-24,Amersfoort,52.15,5.39,20.0,7.2,14.0,0.0,11.7,5.7,334.0,,,12.465305555555554,2025-11-12 20:35:25
|
||||
237,2025-08-25,Amersfoort,52.15,5.39,22.4,7.2,15.5,0.0,8.8,4.5,160.0,,,12.794833333333333,2025-11-12 20:35:25
|
||||
238,2025-08-26,Amersfoort,52.15,5.39,25.8,11.4,18.5,0.0,15.0,10.3,152.0,,,12.094227777777778,2025-11-12 20:35:25
|
||||
239,2025-08-27,Amersfoort,52.15,5.39,24.5,14.6,19.4,0.0,14.8,10.3,212.0,,,12.249797222222222,2025-11-12 20:35:25
|
||||
240,2025-08-28,Amersfoort,52.15,5.39,21.6,13.7,17.9,5.8,15.1,9.2,213.0,,,10.512477777777777,2025-11-12 20:35:25
|
||||
241,2025-08-29,Amersfoort,52.15,5.39,22.1,12.2,16.3,0.2,22.3,14.1,175.0,,,10.08056111111111,2025-11-12 20:35:25
|
||||
242,2025-08-30,Amersfoort,52.15,5.39,21.2,13.7,17.3,0.4,19.1,15.0,211.0,,,9.034522222222222,2025-11-12 20:35:25
|
||||
243,2025-08-31,Amersfoort,52.15,5.39,23.0,16.9,19.3,2.2,19.3,13.3,181.0,,,7.439152777777778,2025-11-12 20:35:25
|
||||
244,2025-09-01,Amersfoort,52.15,5.39,21.8,15.4,18.0,3.7,18.1,11.1,192.0,,,9.426252777777778,2025-11-12 20:35:25
|
||||
245,2025-09-02,Amersfoort,52.15,5.39,21.0,13.9,17.4,0.6,20.1,15.8,198.0,,,11.150716666666668,2025-11-12 20:35:25
|
||||
246,2025-09-03,Amersfoort,52.15,5.39,23.0,15.8,18.7,14.9,35.1,22.9,186.0,,,5.537852777777778,2025-11-12 20:35:25
|
||||
247,2025-09-04,Amersfoort,52.15,5.39,21.6,14.7,17.9,0.0,22.4,18.2,206.0,,,10.387841666666668,2025-11-12 20:35:25
|
||||
248,2025-09-05,Amersfoort,52.15,5.39,19.6,12.6,16.0,0.2,13.7,10.6,246.0,,,11.137172222222222,2025-11-12 20:35:25
|
||||
249,2025-09-06,Amersfoort,52.15,5.39,21.9,7.9,15.4,0.0,14.5,7.8,122.0,,,11.246658333333334,2025-11-12 20:35:25
|
||||
250,2025-09-07,Amersfoort,52.15,5.39,25.8,14.0,19.5,0.0,22.2,16.9,125.0,,,12.076413888888888,2025-11-12 20:35:25
|
||||
251,2025-09-08,Amersfoort,52.15,5.39,23.0,14.9,19.2,1.0,14.7,9.2,274.0,,,8.494299999999999,2025-11-12 20:35:25
|
||||
252,2025-09-09,Amersfoort,52.15,5.39,15.4,10.1,13.8,23.8,11.2,5.3,351.0,,,2.5720305555555556,2025-11-12 20:35:25
|
||||
253,2025-09-10,Amersfoort,52.15,5.39,19.1,7.3,13.7,0.0,17.0,11.2,145.0,,,9.40545,2025-11-12 20:35:25
|
||||
254,2025-09-11,Amersfoort,52.15,5.39,17.8,13.8,15.5,3.3,26.6,19.8,213.0,,,9.853894444444444,2025-11-12 20:35:25
|
||||
255,2025-09-12,Amersfoort,52.15,5.39,17.9,11.8,14.3,0.5,28.3,19.8,215.0,,,11.34265,2025-11-12 20:35:25
|
||||
256,2025-09-13,Amersfoort,52.15,5.39,17.6,12.1,14.1,2.2,25.6,18.0,198.0,,,10.086627777777778,2025-11-12 20:35:25
|
||||
257,2025-09-14,Amersfoort,52.15,5.39,18.0,10.0,14.2,3.4,23.9,14.8,201.0,,,9.055869444444445,2025-11-12 20:35:25
|
||||
258,2025-09-15,Amersfoort,52.15,5.39,17.9,14.1,16.3,4.0,38.7,30.4,227.0,,,11.039744444444445,2025-11-12 20:35:25
|
||||
259,2025-09-16,Amersfoort,52.15,5.39,16.0,12.2,14.0,5.5,29.7,22.9,245.0,,,10.191697222222222,2025-11-12 20:35:25
|
||||
260,2025-09-17,Amersfoort,52.15,5.39,16.5,12.1,14.2,5.1,23.4,17.4,219.0,,,,2025-11-12 20:35:25
|
||||
261,2025-09-18,Amersfoort,52.15,5.39,19.9,16.6,17.9,1.9,22.9,18.8,228.0,,,1.7017694444444444,2025-11-12 20:35:25
|
||||
262,2025-09-19,Amersfoort,52.15,5.39,24.0,13.8,18.6,0.0,16.1,12.1,184.0,,,11.000083333333334,2025-11-12 20:35:25
|
||||
263,2025-09-20,Amersfoort,52.15,5.39,23.4,16.5,19.1,3.0,19.6,14.3,193.0,,,4.440666666666667,2025-11-12 20:35:25
|
||||
264,2025-09-21,Amersfoort,52.15,5.39,19.5,10.4,14.6,0.4,25.7,16.8,262.0,,,4.369930555555555,2025-11-12 20:35:25
|
||||
265,2025-09-22,Amersfoort,52.15,5.39,15.2,9.0,11.7,0.1,19.9,13.1,6.0,,,11.0,2025-11-12 20:35:25
|
||||
266,2025-09-23,Amersfoort,52.15,5.39,16.2,6.2,11.2,0.2,17.2,9.9,22.0,,,11.0,2025-11-12 20:35:25
|
||||
267,2025-09-24,Amersfoort,52.15,5.39,15.2,6.8,11.0,0.0,23.0,16.2,50.0,,,10.975011111111112,2025-11-12 20:35:25
|
||||
268,2025-09-25,Amersfoort,52.15,5.39,14.8,8.6,11.7,0.0,26.6,18.8,63.0,,,8.844491666666666,2025-11-12 20:35:25
|
||||
269,2025-09-26,Amersfoort,52.15,5.39,15.2,9.1,11.9,0.0,14.6,10.0,85.0,,,7.714988888888889,2025-11-12 20:35:25
|
||||
270,2025-09-27,Amersfoort,52.15,5.39,16.0,7.6,11.7,2.1,9.6,6.7,109.0,,,5.563033333333333,2025-11-12 20:35:25
|
||||
271,2025-09-28,Amersfoort,52.15,5.39,18.2,6.8,12.3,0.0,7.8,4.6,143.0,,,10.70563888888889,2025-11-12 20:35:25
|
||||
272,2025-09-29,Amersfoort,52.15,5.39,18.1,7.4,12.2,0.1,11.5,7.0,324.0,,,10.292,2025-11-12 20:35:25
|
||||
273,2025-09-30,Amersfoort,52.15,5.39,16.8,7.6,11.6,0.2,8.9,5.8,3.0,,,8.770619444444444,2025-11-12 20:35:25
|
||||
274,2025-10-01,Amersfoort,52.15,5.39,16.1,5.0,10.2,0.0,10.3,7.4,112.0,,,10.500300000000001,2025-11-12 20:35:25
|
||||
275,2025-10-02,Amersfoort,52.15,5.39,16.1,7.4,11.1,0.0,14.9,11.4,150.0,,,8.177227777777778,2025-11-12 20:35:25
|
||||
276,2025-10-03,Amersfoort,52.15,5.39,13.7,9.4,11.3,7.0,30.7,19.8,166.0,,,,2025-11-12 20:35:25
|
||||
277,2025-10-04,Amersfoort,52.15,5.39,16.5,9.4,12.5,24.8,34.5,28.0,229.0,,,6.124694444444445,2025-11-12 20:35:25
|
||||
278,2025-10-05,Amersfoort,52.15,5.39,13.0,9.6,11.5,4.8,27.0,20.6,266.0,,,3.6100194444444442,2025-11-12 20:35:25
|
||||
279,2025-10-06,Amersfoort,52.15,5.39,15.4,10.0,13.3,0.7,19.8,13.0,263.0,,,,2025-11-12 20:35:25
|
||||
280,2025-10-07,Amersfoort,52.15,5.39,17.8,13.1,15.0,0.0,16.8,11.3,234.0,,,4.271919444444444,2025-11-12 20:35:25
|
||||
281,2025-10-08,Amersfoort,52.15,5.39,16.2,12.9,14.5,1.5,12.3,9.5,255.0,,,1.8599694444444446,2025-11-12 20:35:25
|
||||
282,2025-10-09,Amersfoort,52.15,5.39,15.6,9.6,13.0,0.1,12.8,8.9,269.0,,,5.271686111111111,2025-11-12 20:35:25
|
||||
283,2025-10-10,Amersfoort,52.15,5.39,17.5,11.2,14.2,0.1,13.3,8.9,273.0,,,4.509852777777778,2025-11-12 20:35:25
|
||||
284,2025-10-11,Amersfoort,52.15,5.39,16.5,10.3,13.8,0.1,9.4,6.4,282.0,,,2.832413888888889,2025-11-12 20:35:25
|
||||
285,2025-10-12,Amersfoort,52.15,5.39,15.7,11.0,13.7,0.0,12.9,8.5,326.0,,,1.0842666666666667,2025-11-12 20:35:25
|
||||
286,2025-10-13,Amersfoort,52.15,5.39,16.4,11.6,13.8,0.2,11.2,8.4,3.0,,,2.5476722222222223,2025-11-12 20:35:25
|
||||
287,2025-10-14,Amersfoort,52.15,5.39,15.7,11.8,13.1,0.3,14.1,8.9,335.0,,,3.922227777777778,2025-11-12 20:35:25
|
||||
288,2025-10-15,Amersfoort,52.15,5.39,14.6,11.6,12.7,1.5,11.7,6.9,336.0,,,0.7041527777777777,2025-11-12 20:35:25
|
||||
289,2025-10-16,Amersfoort,52.15,5.39,15.1,8.4,12.1,0.3,15.7,10.1,337.0,,,7.752366666666667,2025-11-12 20:35:25
|
||||
290,2025-10-17,Amersfoort,52.15,5.39,14.3,8.0,11.3,0.0,13.2,8.1,320.0,,,7.061333333333333,2025-11-12 20:35:25
|
||||
291,2025-10-18,Amersfoort,52.15,5.39,12.4,7.1,9.4,0.0,12.6,8.2,100.0,,,7.3075222222222225,2025-11-12 20:35:25
|
||||
292,2025-10-19,Amersfoort,52.15,5.39,13.1,6.3,10.0,0.2,20.4,14.3,141.0,,,8.256694444444443,2025-11-12 20:35:25
|
||||
293,2025-10-20,Amersfoort,52.15,5.39,17.0,12.4,14.4,1.4,23.2,19.3,170.0,,,5.347655555555556,2025-11-12 20:35:25
|
||||
294,2025-10-21,Amersfoort,52.15,5.39,14.6,11.9,13.0,4.9,27.6,22.0,210.0,,,8.094394444444445,2025-11-12 20:35:25
|
||||
295,2025-10-22,Amersfoort,52.15,5.39,14.5,10.6,12.1,0.4,16.6,12.1,209.0,,,6.302669444444445,2025-11-12 20:35:25
|
||||
296,2025-10-23,Amersfoort,52.15,5.39,13.9,9.6,11.4,19.1,35.3,25.3,199.0,,,4.0,2025-11-12 20:35:25
|
||||
297,2025-10-24,Amersfoort,52.15,5.39,10.8,8.6,9.3,7.4,30.2,25.8,236.0,,,8.823558333333335,2025-11-12 20:35:25
|
||||
298,2025-10-25,Amersfoort,52.15,5.39,12.4,6.7,9.2,3.8,27.5,21.9,247.0,,,2.0219944444444446,2025-11-12 20:35:25
|
||||
299,2025-10-26,Amersfoort,52.15,5.39,9.9,5.8,7.9,9.8,31.9,24.2,257.0,,,7.099655555555555,2025-11-12 20:35:25
|
||||
300,2025-10-27,Amersfoort,52.15,5.39,10.0,7.2,8.7,22.1,27.7,21.2,270.0,,,4.7053111111111106,2025-11-12 20:35:25
|
||||
301,2025-10-28,Amersfoort,52.15,5.39,13.2,6.9,10.6,1.5,26.8,19.8,243.0,,,5.678913888888889,2025-11-12 20:35:25
|
||||
302,2025-10-29,Amersfoort,52.15,5.39,13.8,8.9,11.4,3.0,24.0,16.6,202.0,,,4.299341666666667,2025-11-12 20:35:25
|
||||
303,2025-10-30,Amersfoort,52.15,5.39,12.4,7.9,9.8,4.3,26.2,16.2,248.0,,,8.503911111111112,2025-11-12 20:35:25
|
||||
304,2025-10-31,Amersfoort,52.15,5.39,12.9,7.4,10.2,0.0,17.5,15.9,168.0,,,2.697811111111111,2025-11-12 20:35:25
|
||||
305,2025-11-01,Amersfoort,52.15,5.39,13.4,9.9,11.8,8.2,24.1,19.6,190.0,,,,2025-11-12 20:35:25
|
||||
306,2025-11-02,Amersfoort,52.15,5.39,13.0,7.8,10.4,1.8,20.6,16.5,213.0,,,4.868877777777778,2025-11-12 20:35:25
|
||||
307,2025-11-03,Amersfoort,52.15,5.39,12.8,6.2,9.6,0.1,26.1,20.0,209.0,,,1.5915472222222222,2025-11-12 20:35:25
|
||||
308,2025-11-04,Amersfoort,52.15,5.39,15.6,11.4,13.3,0.3,23.7,18.9,192.0,,,6.842933333333334,2025-11-12 20:35:25
|
||||
309,2025-11-05,Amersfoort,52.15,5.39,16.1,10.7,12.7,0.0,18.1,15.2,170.0,,,7.219588888888889,2025-11-12 20:35:25
|
||||
310,2025-11-06,Amersfoort,52.15,5.39,13.9,7.7,10.5,0.0,13.0,10.8,155.0,,,7.454572222222222,2025-11-12 20:35:25
|
||||
311,2025-11-07,Amersfoort,52.15,5.39,15.4,7.1,10.2,0.0,9.4,8.0,165.0,,,7.914011111111111,2025-11-12 20:35:25
|
||||
312,2025-11-08,Amersfoort,52.15,5.39,13.6,4.9,9.0,0.2,7.8,5.3,206.0,,,7.751336111111112,2025-11-12 20:35:25
|
||||
313,2025-11-09,Amersfoort,52.15,5.39,13.0,6.8,9.7,1.7,10.8,7.7,252.0,,,7.512094444444445,2025-11-12 20:35:25
|
||||
314,2025-11-10,Amersfoort,52.15,5.39,10.9,5.2,8.1,1.7,20.4,15.2,174.0,,,2.0745694444444442,2025-11-12 20:35:25
|
||||
315,2025-11-11,Amersfoort,52.15,5.39,12.3,8.6,10.1,0.5,21.5,18.1,200.0,,,1.972027777777778,2025-11-12 20:35:25
|
||||
|
7561
amersfoort_2025_uurlijks.csv
Normal file
7561
amersfoort_2025_uurlijks.csv
Normal file
File diff suppressed because it is too large
Load Diff
364
jaar_weerdata.py
Normal file
364
jaar_weerdata.py
Normal file
@@ -0,0 +1,364 @@
|
||||
"""
|
||||
Script voor het ophalen van een HEEL JAAR aan historische weerdata voor Amersfoort
|
||||
"""
|
||||
import requests
|
||||
import sqlite3
|
||||
import pandas as pd
|
||||
from datetime import datetime
|
||||
import time
|
||||
|
||||
# ===== CONFIGURATIE =====
|
||||
LOCATIE = "Amersfoort"
|
||||
LATITUDE = 52.15
|
||||
LONGITUDE = 5.39
|
||||
|
||||
# Kies je jaar(en) hier!
|
||||
START_JAAR = 2025
|
||||
START_MAAND = 1
|
||||
START_DAG = 1
|
||||
|
||||
EIND_JAAR = 2025
|
||||
EIND_MAAND = 11
|
||||
EIND_DAG = 11
|
||||
|
||||
DATABASE_NAAM = f"weer_amersfoort_{START_JAAR}.db"
|
||||
|
||||
# Open-Meteo kan maximaal 1 jaar per request, dus we splitsen het op indien nodig
|
||||
# ========================
|
||||
|
||||
def setup_database(db_naam):
|
||||
"""Maak database en tabellen aan"""
|
||||
conn = sqlite3.connect(db_naam)
|
||||
cursor = conn.cursor()
|
||||
|
||||
cursor.execute('''
|
||||
CREATE TABLE IF NOT EXISTS weer_dagelijks (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
datum DATE UNIQUE NOT NULL,
|
||||
locatie TEXT NOT NULL,
|
||||
latitude REAL,
|
||||
longitude REAL,
|
||||
temp_max REAL,
|
||||
temp_min REAL,
|
||||
temp_gem REAL,
|
||||
neerslag REAL,
|
||||
wind_max REAL,
|
||||
wind_gem REAL,
|
||||
wind_richting REAL,
|
||||
luchtvochtigheid_gem REAL,
|
||||
bewolking_gem REAL,
|
||||
zonuren REAL,
|
||||
toegevoegd_op TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
)
|
||||
''')
|
||||
|
||||
cursor.execute('''
|
||||
CREATE TABLE IF NOT EXISTS weer_uurlijks (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
datum_tijd DATETIME UNIQUE NOT NULL,
|
||||
locatie TEXT NOT NULL,
|
||||
temperatuur REAL,
|
||||
gevoelstemperatuur REAL,
|
||||
neerslag REAL,
|
||||
wind_snelheid REAL,
|
||||
wind_richting REAL,
|
||||
luchtvochtigheid INTEGER,
|
||||
bewolking INTEGER,
|
||||
luchtdruk REAL,
|
||||
toegevoegd_op TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
)
|
||||
''')
|
||||
|
||||
conn.commit()
|
||||
return conn
|
||||
|
||||
def haal_weerdata_op(start_date, end_date, ophaal_uurlijks=True):
|
||||
"""
|
||||
Haal weerdata op via Open-Meteo API
|
||||
|
||||
Args:
|
||||
start_date: datetime object voor startdatum
|
||||
end_date: datetime object voor einddatum
|
||||
ophaal_uurlijks: Ook uurlijkse data ophalen (kan veel data zijn!)
|
||||
"""
|
||||
url = "https://archive-api.open-meteo.com/v1/archive"
|
||||
|
||||
# Uitgebreide parameters voor een volledig beeld
|
||||
params = {
|
||||
"latitude": LATITUDE,
|
||||
"longitude": LONGITUDE,
|
||||
"start_date": start_date.strftime("%Y-%m-%d"),
|
||||
"end_date": end_date.strftime("%Y-%m-%d"),
|
||||
"daily": [
|
||||
"temperature_2m_max",
|
||||
"temperature_2m_min",
|
||||
"temperature_2m_mean",
|
||||
"apparent_temperature_max",
|
||||
"apparent_temperature_min",
|
||||
"precipitation_sum",
|
||||
"rain_sum",
|
||||
"snowfall_sum",
|
||||
"precipitation_hours",
|
||||
"wind_speed_10m_max",
|
||||
"wind_speed_10m_mean",
|
||||
"wind_direction_10m_dominant",
|
||||
"sunshine_duration"
|
||||
],
|
||||
"timezone": "Europe/Amsterdam"
|
||||
}
|
||||
|
||||
if ophaal_uurlijks:
|
||||
params["hourly"] = [
|
||||
"temperature_2m",
|
||||
"apparent_temperature",
|
||||
"precipitation",
|
||||
"rain",
|
||||
"snowfall",
|
||||
"wind_speed_10m",
|
||||
"wind_direction_10m",
|
||||
"relative_humidity_2m",
|
||||
"cloud_cover",
|
||||
"surface_pressure"
|
||||
]
|
||||
|
||||
print(f"\n📡 Data ophalen voor periode: {start_date.date()} tot {end_date.date()}")
|
||||
print(f" Aantal dagen: {(end_date - start_date).days + 1}")
|
||||
|
||||
try:
|
||||
response = requests.get(url, params=params, timeout=60)
|
||||
response.raise_for_status()
|
||||
print(f"✅ Data succesvol opgehaald!")
|
||||
return response.json()
|
||||
except requests.exceptions.RequestException as e:
|
||||
print(f"❌ Fout bij ophalen data: {e}")
|
||||
return None
|
||||
|
||||
def sla_dagelijkse_data_op(conn, data):
|
||||
"""Sla dagelijkse data op in database"""
|
||||
if not data or 'daily' not in data:
|
||||
return 0
|
||||
|
||||
daily = data['daily']
|
||||
cursor = conn.cursor()
|
||||
records_toegevoegd = 0
|
||||
|
||||
for i in range(len(daily['time'])):
|
||||
try:
|
||||
cursor.execute('''
|
||||
INSERT OR REPLACE INTO weer_dagelijks
|
||||
(datum, locatie, latitude, longitude, temp_max, temp_min,
|
||||
temp_gem, neerslag, wind_max, wind_gem, wind_richting,
|
||||
zonuren)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
||||
''', (
|
||||
daily['time'][i],
|
||||
LOCATIE,
|
||||
LATITUDE,
|
||||
LONGITUDE,
|
||||
daily['temperature_2m_max'][i],
|
||||
daily['temperature_2m_min'][i],
|
||||
daily['temperature_2m_mean'][i],
|
||||
daily['precipitation_sum'][i],
|
||||
daily['wind_speed_10m_max'][i],
|
||||
daily['wind_speed_10m_mean'][i],
|
||||
daily['wind_direction_10m_dominant'][i],
|
||||
daily['sunshine_duration'][i] / 3600 if daily['sunshine_duration'][i] else None # Convert seconds to hours
|
||||
))
|
||||
records_toegevoegd += 1
|
||||
except sqlite3.IntegrityError:
|
||||
pass
|
||||
|
||||
conn.commit()
|
||||
return records_toegevoegd
|
||||
|
||||
def sla_uurlijkse_data_op(conn, data):
|
||||
"""Sla uurlijkse data op in database"""
|
||||
if not data or 'hourly' not in data:
|
||||
return 0
|
||||
|
||||
hourly = data['hourly']
|
||||
cursor = conn.cursor()
|
||||
records_toegevoegd = 0
|
||||
|
||||
print(f" Uurlijkse records verwerken: {len(hourly['time'])} uur...")
|
||||
|
||||
# Batch insert voor betere performance
|
||||
batch = []
|
||||
for i in range(len(hourly['time'])):
|
||||
batch.append((
|
||||
hourly['time'][i],
|
||||
LOCATIE,
|
||||
hourly['temperature_2m'][i],
|
||||
hourly['apparent_temperature'][i],
|
||||
hourly['precipitation'][i],
|
||||
hourly['wind_speed_10m'][i],
|
||||
hourly['wind_direction_10m'][i],
|
||||
hourly['relative_humidity_2m'][i],
|
||||
hourly['cloud_cover'][i],
|
||||
hourly['surface_pressure'][i]
|
||||
))
|
||||
|
||||
cursor.executemany('''
|
||||
INSERT OR REPLACE INTO weer_uurlijks
|
||||
(datum_tijd, locatie, temperatuur, gevoelstemperatuur, neerslag,
|
||||
wind_snelheid, wind_richting, luchtvochtigheid, bewolking, luchtdruk)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
||||
''', batch)
|
||||
|
||||
conn.commit()
|
||||
return len(batch)
|
||||
|
||||
def toon_statistieken(conn):
|
||||
"""Toon statistieken van de database"""
|
||||
cursor = conn.cursor()
|
||||
|
||||
cursor.execute("SELECT COUNT(*) FROM weer_dagelijks")
|
||||
aantal_dagen = cursor.fetchone()[0]
|
||||
|
||||
cursor.execute("SELECT COUNT(*) FROM weer_uurlijks")
|
||||
aantal_uren = cursor.fetchone()[0]
|
||||
|
||||
print("\n" + "="*70)
|
||||
print("DATABASE STATISTIEKEN")
|
||||
print("="*70)
|
||||
print(f"📊 Dagelijkse records: {aantal_dagen} dagen")
|
||||
print(f"📊 Uurlijkse records: {aantal_uren} uur")
|
||||
|
||||
if aantal_dagen > 0:
|
||||
cursor.execute("""
|
||||
SELECT
|
||||
MIN(datum) as eerste_datum,
|
||||
MAX(datum) as laatste_datum,
|
||||
ROUND(AVG(temp_max), 1) as gem_max_temp,
|
||||
ROUND(MAX(temp_max), 1) as hoogste_temp,
|
||||
ROUND(MIN(temp_min), 1) as laagste_temp,
|
||||
ROUND(SUM(neerslag), 1) as totale_neerslag,
|
||||
ROUND(AVG(wind_max), 1) as gem_wind,
|
||||
ROUND(SUM(zonuren), 1) as totale_zonuren
|
||||
FROM weer_dagelijks
|
||||
""")
|
||||
|
||||
stats = cursor.fetchone()
|
||||
print(f"\n📅 Periode: {stats[0]} tot {stats[1]}")
|
||||
print(f"\n🌡️ TEMPERATUUR:")
|
||||
print(f" Gemiddeld max: {stats[2]}°C")
|
||||
print(f" Hoogste: {stats[3]}°C")
|
||||
print(f" Laagste: {stats[4]}°C")
|
||||
print(f"\n💧 NEERSLAG:")
|
||||
print(f" Totaal: {stats[5]} mm")
|
||||
print(f"\n💨 WIND:")
|
||||
print(f" Gemiddeld max: {stats[6]} km/h")
|
||||
print(f"\n☀️ ZON:")
|
||||
print(f" Totale zonuren: {stats[7]} uur ({stats[7]/24:.1f} dagen)")
|
||||
|
||||
# Maandstatistieken
|
||||
print(f"\n📊 PER MAAND:")
|
||||
cursor.execute("""
|
||||
SELECT
|
||||
strftime('%Y-%m', datum) as maand,
|
||||
ROUND(AVG(temp_max), 1) as gem_max,
|
||||
ROUND(AVG(temp_min), 1) as gem_min,
|
||||
ROUND(SUM(neerslag), 1) as neerslag,
|
||||
COUNT(CASE WHEN neerslag > 0.1 THEN 1 END) as regendagen
|
||||
FROM weer_dagelijks
|
||||
GROUP BY maand
|
||||
ORDER BY maand
|
||||
""")
|
||||
|
||||
print(f"\n {'Maand':<10} {'Max°C':<8} {'Min°C':<8} {'Neerslag':<12} {'Regendagen':<12}")
|
||||
print(f" {'-'*60}")
|
||||
for row in cursor.fetchall():
|
||||
print(f" {row[0]:<10} {row[1]:<8} {row[2]:<8} {row[3]:<12} {row[4]:<12}")
|
||||
|
||||
print("="*70)
|
||||
|
||||
def exporteer_naar_csv(conn, output_prefix="weer_export"):
|
||||
"""Exporteer data naar CSV bestanden"""
|
||||
# Dagelijkse data
|
||||
df_dagelijks = pd.read_sql_query(
|
||||
"SELECT * FROM weer_dagelijks ORDER BY datum",
|
||||
conn
|
||||
)
|
||||
csv_dag = f"{output_prefix}_dagelijks.csv"
|
||||
df_dagelijks.to_csv(csv_dag, index=False)
|
||||
print(f"✅ Dagelijkse data: {csv_dag} ({len(df_dagelijks)} records)")
|
||||
|
||||
# Uurlijkse data (alleen als niet te groot)
|
||||
cursor = conn.cursor()
|
||||
cursor.execute("SELECT COUNT(*) FROM weer_uurlijks")
|
||||
aantal_uur = cursor.fetchone()[0]
|
||||
|
||||
if aantal_uur > 0 and aantal_uur < 10000: # Max ~1 jaar uurlijks
|
||||
df_uurlijks = pd.read_sql_query(
|
||||
"SELECT * FROM weer_uurlijks ORDER BY datum_tijd",
|
||||
conn
|
||||
)
|
||||
csv_uur = f"{output_prefix}_uurlijks.csv"
|
||||
df_uurlijks.to_csv(csv_uur, index=False)
|
||||
print(f"✅ Uurlijkse data: {csv_uur} ({len(df_uurlijks)} records)")
|
||||
elif aantal_uur > 10000:
|
||||
print(f"⚠️ Uurlijkse data ({aantal_uur} records) niet geëxporteerd (te groot)")
|
||||
|
||||
|
||||
def main():
|
||||
"""Hoofdfunctie"""
|
||||
print("="*70)
|
||||
print(f"HISTORISCHE WEERDATA VOOR {LOCATIE}")
|
||||
print("="*70)
|
||||
|
||||
# Datum objecten maken
|
||||
start_date = datetime(START_JAAR, START_MAAND, START_DAG)
|
||||
end_date = datetime(EIND_JAAR, EIND_MAAND, EIND_DAG)
|
||||
|
||||
# Check of periode niet te groot is
|
||||
dagen = (end_date - start_date).days + 1
|
||||
if dagen > 400:
|
||||
antwoord = input(f"\n⚠️ Je wilt {dagen} dagen ophalen. Dit kan even duren. Doorgaan? (j/n): ")
|
||||
if antwoord.lower() != 'j':
|
||||
print("Geannuleerd.")
|
||||
return
|
||||
|
||||
# Uurlijkse data vraag
|
||||
if dagen > 180:
|
||||
print(f"\n💡 TIP: Voor {dagen} dagen is dat {dagen*24} uur aan data.")
|
||||
ophaal_uurlijks = input(" Wil je ook uurlijkse data? Dit maakt de database groter. (j/n): ")
|
||||
ophaal_uurlijks = ophaal_uurlijks.lower() == 'j'
|
||||
else:
|
||||
ophaal_uurlijks = True
|
||||
|
||||
# Setup database
|
||||
print(f"\n📁 Database: {DATABASE_NAAM}")
|
||||
conn = setup_database(DATABASE_NAAM)
|
||||
|
||||
# Haal data op
|
||||
data = haal_weerdata_op(start_date, end_date, ophaal_uurlijks)
|
||||
|
||||
if data:
|
||||
print("\n💾 Data opslaan in database...")
|
||||
|
||||
# Dagelijkse data
|
||||
dag_records = sla_dagelijkse_data_op(conn, data)
|
||||
print(f"✅ {dag_records} dagelijkse records opgeslagen")
|
||||
|
||||
# Uurlijkse data
|
||||
if ophaal_uurlijks:
|
||||
uur_records = sla_uurlijkse_data_op(conn, data)
|
||||
print(f"✅ {uur_records} uurlijkse records opgeslagen")
|
||||
|
||||
# Statistieken
|
||||
toon_statistieken(conn)
|
||||
|
||||
# Exporteer
|
||||
print(f"\n📤 Data exporteren...")
|
||||
exporteer_naar_csv(conn, f"amersfoort_{START_JAAR}")
|
||||
|
||||
conn.close()
|
||||
print(f"\n✅ Klaar! Database opgeslagen als: {DATABASE_NAAM}")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
print("\n💡 Open-Meteo API - Gratis historische weerdata")
|
||||
print(" Data beschikbaar vanaf 1940")
|
||||
print(" Geen API key nodig!\n")
|
||||
|
||||
main()
|
||||
471118
price_forecast_model.json
Normal file
471118
price_forecast_model.json
Normal file
File diff suppressed because it is too large
Load Diff
1
price_forecast_model_v1_5.json
Normal file
1
price_forecast_model_v1_5.json
Normal file
File diff suppressed because one or more lines are too long
102
train_model1.5.py
Normal file
102
train_model1.5.py
Normal file
@@ -0,0 +1,102 @@
|
||||
import pandas as pd
|
||||
import numpy as np
|
||||
import holidays
|
||||
import xgboost as xgb
|
||||
from sklearn.metrics import mean_absolute_error
|
||||
|
||||
print("Start training Model 1.5...")
|
||||
|
||||
# --- 1. DATA LADEN ---
|
||||
# We gebruiken de CSV die we al hadden
|
||||
try:
|
||||
df = pd.read_csv("training_set_2024_2025.csv")
|
||||
df['datum_tijd'] = pd.to_datetime(df['datum_tijd'])
|
||||
df = df.set_index('datum_tijd').sort_index()
|
||||
print(f"Data geladen: {len(df)} rijen.")
|
||||
except FileNotFoundError:
|
||||
print("Zorg dat 'training_set_2024_2025.csv' in de map staat.")
|
||||
raise
|
||||
|
||||
# --- 2. FEATURE ENGINEERING (v1.5) ---
|
||||
print("Feature Engineering (v1.5) gestart...")
|
||||
|
||||
# --- 2a. FEESTDAGEN FEATURE ---
|
||||
# Maak een lijst van Nederlandse feestdagen voor de relevante jaren
|
||||
nl_holidays = holidays.Netherlands(years=[2024, 2025])
|
||||
df['is_feestdag'] = df.index.to_series().apply(lambda x: 1 if x in nl_holidays else 0)
|
||||
print("Feestdagen feature toegevoegd.")
|
||||
|
||||
# --- 2b. TIJD-FEATURES (Basis) ---
|
||||
df['uur_van_de_dag'] = df.index.hour
|
||||
df['dag_van_de_week'] = df.index.dayofweek # 0=Maandag, 6=Zondag
|
||||
df['maand'] = df.index.month
|
||||
df['dag_van_het_jaar'] = df.index.dayofyear
|
||||
|
||||
# --- 2c. ONE-HOT ENCODING (DE BELANGRIJKSTE FIX) ---
|
||||
# Converteer 'dag_van_de_week' en 'uur_van_de_dag' naar losse kolommen
|
||||
print("One-Hot Encoding toepassen...")
|
||||
df = pd.get_dummies(df, columns=['dag_van_de_week', 'uur_van_de_dag'],
|
||||
prefix=['dag', 'uur'])
|
||||
|
||||
# --- 2d. Basis Lag/Rolling Features (deze hadden we al) ---
|
||||
df['prijs_1u_geleden'] = df['gemiddelde_prijs'].shift(1)
|
||||
df['prijs_24u_geleden'] = df['gemiddelde_prijs'].shift(24)
|
||||
df['temp_avg_3u'] = df['temperatuur'].rolling(window=3).mean()
|
||||
df['prijs_avg_6u'] = df['gemiddelde_prijs'].rolling(window=6).mean()
|
||||
|
||||
# --- 2e. Opschonen ---
|
||||
# We verliezen nu maar 24 rijen (van de 'prijs_24u_geleden' lag)
|
||||
print(f"Rijen vóór opschonen: {len(df)}")
|
||||
df_clean = df.dropna()
|
||||
print(f"Rijen ná opschonen: {len(df_clean)}")
|
||||
|
||||
# Toon ons de nieuwe features
|
||||
print("\nVoorbeeld van de nieuwe 'dag' features:")
|
||||
print(df_clean.filter(like='dag_').head())
|
||||
|
||||
# --- 3. DEFINIEER FEATURES (X) en TARGET (y) ---
|
||||
TARGET = 'gemiddelde_prijs'
|
||||
# Automatisch alle kolommen als feature gebruiken
|
||||
FEATURES = [col for col in df_clean.columns if col not in [TARGET]]
|
||||
|
||||
print(f"\nModel wordt getraind met {len(FEATURES)} features.")
|
||||
|
||||
X = df_clean[FEATURES]
|
||||
y = df_clean[TARGET]
|
||||
|
||||
# --- 4. CHRONOLOGISCHE SPLIT ---
|
||||
# We splitsen op 1 jan 2025, net als de vorige keer
|
||||
SPLIT_DATE = '2025-01-01 00:00:00'
|
||||
train_mask = X.index < SPLIT_DATE
|
||||
test_mask = X.index >= SPLIT_DATE
|
||||
|
||||
X_train, y_train = X[train_mask], y[train_mask]
|
||||
X_test, y_test = X[test_mask], y[test_mask]
|
||||
|
||||
print(f"Trainingset: {len(X_train)} rijen")
|
||||
print(f"Testset: {len(X_test)} rijen")
|
||||
|
||||
# --- 5. MODEL TRAINEN ---
|
||||
xgb_model_v1_5 = xgb.XGBRegressor(
|
||||
n_estimators=1000,
|
||||
learning_rate=0.01,
|
||||
early_stopping_rounds=50
|
||||
)
|
||||
|
||||
print("\nModel v1.5 aan het trainen...")
|
||||
xgb_model_v1_5.fit(
|
||||
X_train, y_train,
|
||||
eval_set=[(X_test, y_test)],
|
||||
verbose=False # Zet op 100 om voortgang te zien
|
||||
)
|
||||
print("Training voltooid.")
|
||||
|
||||
# --- 6. EVALUATIE ---
|
||||
voorspellingen_v1_5 = xgb_model_v1_5.predict(X_test)
|
||||
mae_v1_5 = mean_absolute_error(y_test, voorspellingen_v1_5)
|
||||
print(f"\nNieuwe Model (v1.5) MAE: {mae_v1_5:.4f}")
|
||||
|
||||
# --- 7. MODEL OPSLAAN ---
|
||||
MODEL_FILE = 'price_forecast_model_v1_5.json'
|
||||
xgb_model_v1_5.save_model(MODEL_FILE)
|
||||
print(f"\nModel 1.5 opgeslagen als: {MODEL_FILE}")
|
||||
11579
training_set_2024_2025.csv
Normal file
11579
training_set_2024_2025.csv
Normal file
File diff suppressed because it is too large
Load Diff
194
update_weather.py
Normal file
194
update_weather.py
Normal file
@@ -0,0 +1,194 @@
|
||||
"""
|
||||
Script voor het INCREMENTEEL ophalen van weerdata voor Amersfoort
|
||||
en dit direct in MySQL op te slaan (met 'Upsert' logica).
|
||||
Het vult de database aan vanaf de laatst bekende datum tot NU.
|
||||
"""
|
||||
import requests
|
||||
import mysql.connector
|
||||
from mysql.connector import Error
|
||||
import pandas as pd
|
||||
from datetime import datetime, timedelta
|
||||
import time
|
||||
|
||||
# ===== CONFIGURATIE =====
|
||||
LOCATIE = "Amersfoort"
|
||||
LATITUDE = 52.15
|
||||
LONGITUDE = 5.39
|
||||
|
||||
# --- MySQL Database Config ---
|
||||
# VUL DIT IN MET JOUW GEGEVENS
|
||||
DB_CONFIG = {
|
||||
'host': '192.168.178.201',
|
||||
'user': 'energy_prices_user',
|
||||
'password': 'kS9R*xp17ZwCD@CV&E^N',
|
||||
'database': 'energy_prices',
|
||||
'port': 3307
|
||||
}
|
||||
# ========================
|
||||
|
||||
|
||||
def haal_recente_weerdata_op(aantal_dagen_terug):
|
||||
"""
|
||||
Haal recente/huidige weerdata op via de Open-Meteo FORECAST API
|
||||
"""
|
||||
url = "https://api.open-meteo.com/v1/forecast" # Dit is de Forecast API
|
||||
|
||||
params = {
|
||||
"latitude": LATITUDE,
|
||||
"longitude": LONGITUDE,
|
||||
"hourly": [
|
||||
"temperature_2m",
|
||||
"apparent_temperature",
|
||||
"precipitation",
|
||||
"wind_speed_10m",
|
||||
"wind_direction_10m",
|
||||
"relative_humidity_2m",
|
||||
"cloud_cover",
|
||||
"surface_pressure"
|
||||
],
|
||||
"timezone": "Europe/Amsterdam",
|
||||
"past_days": int(aantal_dagen_terug) # Vraag data op van de afgelopen X dagen
|
||||
}
|
||||
|
||||
print(f"\n📡 Data ophalen voor de afgelopen {aantal_dagen_terug} dagen (tot nu)...")
|
||||
|
||||
try:
|
||||
response = requests.get(url, params=params, timeout=60)
|
||||
response.raise_for_status()
|
||||
print(f"✅ Data succesvol opgehaald van Open-Meteo!")
|
||||
return response.json()
|
||||
except requests.exceptions.RequestException as e:
|
||||
print(f"❌ Fout bij ophalen data: {e}")
|
||||
return None
|
||||
|
||||
def parse_api_data(data):
|
||||
"""Converteer de JSON response van de Forecast API naar een DataFrame"""
|
||||
hourly = data['hourly']
|
||||
|
||||
df = pd.DataFrame({
|
||||
"datum_tijd": pd.to_datetime(hourly['time']),
|
||||
"locatie": LOCATIE,
|
||||
"temperatuur": hourly['temperature_2m'],
|
||||
"gevoelstemperatuur": hourly['apparent_temperature'],
|
||||
"neerslag": hourly['precipitation'],
|
||||
"wind_snelheid": hourly['wind_speed_10m'],
|
||||
"wind_richting": hourly['wind_direction_10m'],
|
||||
"luchtvochtigheid": hourly['relative_humidity_2m'],
|
||||
"bewolking": hourly['cloud_cover'],
|
||||
"luchtdruk": hourly['surface_pressure']
|
||||
})
|
||||
# Vervang 'None' of 'NaN' door None (dat MySQL als NULL begrijpt)
|
||||
df = df.where(pd.notnull(df), None)
|
||||
return df
|
||||
|
||||
|
||||
def sla_data_op_mysql(conn, data_df):
|
||||
"""Sla data op in MySQL database met 'Upsert' logica"""
|
||||
if data_df.empty:
|
||||
print("Geen data om op te slaan.")
|
||||
return 0
|
||||
|
||||
cursor = conn.cursor()
|
||||
|
||||
print(f" ----------------------------------------------------------------------")
|
||||
print(f" {len(data_df)} uurlijkse records voor MySQL verwerken (Upsert)...")
|
||||
|
||||
# Maak een lijst van tuples voor de 'executemany'
|
||||
batch = [tuple(row) for row in data_df.itertuples(index=False)]
|
||||
|
||||
# De "Upsert" query.
|
||||
# Dit werkt perfect omdat 'datum_tijd' je PRIMARY KEY is.
|
||||
query = """
|
||||
INSERT INTO amersfoort_weer_uurlijks
|
||||
(datum_tijd, locatie, temperatuur, gevoelstemperatuur, neerslag,
|
||||
wind_snelheid, wind_richting, luchtvochtigheid, bewolking, luchtdruk)
|
||||
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)
|
||||
ON DUPLICATE KEY UPDATE
|
||||
locatie = VALUES(locatie),
|
||||
temperatuur = VALUES(temperatuur),
|
||||
gevoelstemperatuur = VALUES(gevoelstemperatuur),
|
||||
neerslag = VALUES(neerslag),
|
||||
wind_snelheid = VALUES(wind_snelheid),
|
||||
wind_richting = VALUES(wind_richting),
|
||||
luchtvochtigheid = VALUES(luchtvochtigheid),
|
||||
bewolking = VALUES(bewolking),
|
||||
luchtdruk = VALUES(luchtdruk);
|
||||
"""
|
||||
|
||||
try:
|
||||
cursor.executemany(query, batch)
|
||||
conn.commit()
|
||||
|
||||
# rowcount bij 'upsert' telt 1 voor een INSERT, en 2 voor een UPDATE
|
||||
print(f"✅ {cursor.rowcount} records succesvol verwerkt (inserted/updated).")
|
||||
return cursor.rowcount
|
||||
except Error as e:
|
||||
print(f"❌ Fout bij opslaan naar MySQL: {e}")
|
||||
conn.rollback()
|
||||
return 0
|
||||
|
||||
def main():
|
||||
"""Hoofdfunctie"""
|
||||
print("="*70)
|
||||
print(f"INCREMENTELE WEERDATA UPDATE VOOR {LOCATIE} -> MYSQL")
|
||||
print("="*70)
|
||||
|
||||
conn = None
|
||||
try:
|
||||
# 1. Verbind met DB en vind laatste datum
|
||||
print("💾 Verbinden met MySQL database...")
|
||||
conn = mysql.connector.connect(**DB_CONFIG)
|
||||
cursor = conn.cursor()
|
||||
print("✅ Succesvol verbonden met MySQL.")
|
||||
|
||||
cursor.execute("SELECT MAX(datum_tijd) FROM amersfoort_weer_uurlijks")
|
||||
result = cursor.fetchone()
|
||||
last_date_in_db = result[0] if result[0] else None
|
||||
|
||||
aantal_dagen_terug = 1
|
||||
if last_date_in_db is None:
|
||||
print("Database is leeg. 16 dagen data wordt opgehaald.")
|
||||
aantal_dagen_terug = 16 # Maximaal wat de API toestaat
|
||||
else:
|
||||
print(f"Laatste datum in database: {last_date_in_db}")
|
||||
# Bereken hoeveel dagen we terug moeten kijken
|
||||
# +1 voor veiligheid, +1 omdat 'past_days' geen 'vandaag' meerekent
|
||||
dagen_verschil = (datetime.now() - last_date_in_db).days + 2
|
||||
aantal_dagen_terug = min(max(1, dagen_verschil), 16)
|
||||
|
||||
print(f"Database is {dagen_verschil-2} dagen oud. We halen {aantal_dagen_terug} dag(en) op.")
|
||||
|
||||
# 2. Haal recente data op
|
||||
data = haal_recente_weerdata_op(aantal_dagen_terug)
|
||||
|
||||
if data:
|
||||
# 3. Parse de data naar een DataFrame
|
||||
all_data_df = parse_api_data(data)
|
||||
|
||||
# 4. Filter ALLEEN de data die we nog niet hebben
|
||||
# We filteren alle data *na* de laatste datum in de DB
|
||||
if last_date_in_db is not None:
|
||||
# We pakken alle data *na* onze laatste meting
|
||||
# De 'upsert' query handelt eventuele overlap af
|
||||
data_om_op_te_slaan = all_data_df[all_data_df['datum_tijd'] > last_date_in_db].copy()
|
||||
else:
|
||||
data_om_op_te_slaan = all_data_df.copy() # Alles is nieuw
|
||||
|
||||
# 5. Sla de data op
|
||||
if not data_om_op_te_slaan.empty:
|
||||
sla_data_op_mysql(conn, data_om_op_te_slaan)
|
||||
else:
|
||||
print("\n✅ Je database is al volledig up-to-date.")
|
||||
|
||||
except Error as e:
|
||||
print(f"❌ Hoofdfout: {e}")
|
||||
finally:
|
||||
if conn and conn.is_connected():
|
||||
conn.close()
|
||||
print("Verbinding met MySQL gesloten.")
|
||||
|
||||
print(f"\n✅ Klaar! Script voltooid.")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
186
voorspel.py
Normal file
186
voorspel.py
Normal file
@@ -0,0 +1,186 @@
|
||||
import pandas as pd
|
||||
import numpy as np
|
||||
import xgboost as xgb
|
||||
import mysql.connector
|
||||
from mysql.connector import Error
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
|
||||
# --- CONFIGURATIE ---
|
||||
MODEL_FILE = 'price_forecast_model.json'
|
||||
TARGET = 'gemiddelde_prijs'
|
||||
AANTAL_UUR_VOORSPELLEN = 120 # Hoeveel uur vooruit wil je kijken?
|
||||
pd.set_option('display.max_rows', None) # Forceert pandas om ALLE rijen te printen
|
||||
|
||||
|
||||
# --- MySQL Database Config ---
|
||||
# VUL DIT IN MET JOUW GEGEVENS
|
||||
DB_CONFIG = {
|
||||
'host': '192.168.178.201',
|
||||
'user': 'energy_prices_user',
|
||||
'password': 'kS9R*xp17ZwCD@CV&E^N',
|
||||
'database': 'energy_prices',
|
||||
'port': 3307
|
||||
}
|
||||
|
||||
# Dit zijn de 16 features die het model MOET hebben
|
||||
FEATURES = [
|
||||
'temperatuur', 'gevoelstemperatuur', 'neerslag', 'wind_richting',
|
||||
'wind_snelheid', 'bewolking', 'luchtdruk', 'luchtvochtigheid',
|
||||
'uur_van_de_dag', 'dag_van_de_week', 'maand', 'dag_van_het_jaar',
|
||||
'prijs_1u_geleden', 'prijs_24u_geleden', 'temp_avg_3u', 'prijs_avg_6u'
|
||||
]
|
||||
|
||||
print("="*70)
|
||||
print("PRIJS VOORSPELLER (op basis van data uit MySQL)")
|
||||
print("="*70)
|
||||
|
||||
def haal_data_uit_database(conn):
|
||||
"""
|
||||
Haalt alle benodigde data op:
|
||||
1. Historie (afgelopen 30 uur, weer + prijs)
|
||||
2. Toekomst (komende 24 uur, alleen weer)
|
||||
"""
|
||||
print("💾 Data ophalen uit MySQL...")
|
||||
|
||||
# 1. Haal recente HISTORIE op (weer + prijs)
|
||||
# We hebben de prijs-tabel (dynamic_price_data) nodig
|
||||
query_hist = """
|
||||
SELECT
|
||||
w.datum_tijd, w.temperatuur, w.gevoelstemperatuur, w.neerslag,
|
||||
w.wind_richting, w.wind_snelheid, w.bewolking, w.luchtdruk, w.luchtvochtigheid,
|
||||
p_avg.gemiddelde_prijs
|
||||
FROM
|
||||
amersfoort_weer_uurlijks AS w
|
||||
JOIN
|
||||
(SELECT datetime, AVG(price) AS gemiddelde_prijs
|
||||
FROM dynamic_price_data GROUP BY datetime) AS p_avg
|
||||
ON w.datum_tijd = p_avg.datetime
|
||||
WHERE
|
||||
w.datum_tijd BETWEEN (NOW() - INTERVAL 30 HOUR) AND NOW()
|
||||
ORDER BY
|
||||
w.datum_tijd;
|
||||
"""
|
||||
|
||||
# 2. Haal TOEKOMSTIG weer op (alleen weer, prijs is NULL)
|
||||
query_toekomst = f"""
|
||||
SELECT
|
||||
datum_tijd, temperatuur, gevoelstemperatuur, neerslag,
|
||||
wind_richting, wind_snelheid, bewolking, luchtdruk, luchtvochtigheid,
|
||||
NULL AS gemiddelde_prijs -- Prijs is nog niet bekend
|
||||
FROM
|
||||
amersfoort_weer_uurlijks
|
||||
WHERE
|
||||
datum_tijd BETWEEN NOW() AND (NOW() + INTERVAL {AANTAL_UUR_VOORSPELLEN} HOUR)
|
||||
ORDER BY
|
||||
datum_tijd;
|
||||
"""
|
||||
|
||||
try:
|
||||
hist_df = pd.read_sql(query_hist, conn, index_col='datum_tijd', parse_dates=['datum_tijd'])
|
||||
toekomst_df = pd.read_sql(query_toekomst, conn, index_col='datum_tijd', parse_dates=['datum_tijd'])
|
||||
|
||||
print(f"✅ {len(hist_df)} uur historie geladen.")
|
||||
print(f"✅ {len(toekomst_df)} uur toekomstig weer geladen.")
|
||||
|
||||
# 3. Combineer ze tot één 'werkblad'
|
||||
combined_df = pd.concat([hist_df, toekomst_df])
|
||||
return combined_df.sort_index()
|
||||
|
||||
except Exception as e:
|
||||
print(f"❌ Fout bij ophalen data: {e}")
|
||||
return None
|
||||
|
||||
def maak_features_voor_uur(df, timestamp):
|
||||
"""
|
||||
Maak de 16 features voor één specifiek uur.
|
||||
Hiervoor zijn de *vorige* rijen in de DataFrame nodig.
|
||||
"""
|
||||
features = {}
|
||||
|
||||
# Haal data op van het specifieke uur
|
||||
data_nu = df.loc[timestamp]
|
||||
|
||||
# 1. Tijd-features
|
||||
features['uur_van_de_dag'] = timestamp.hour
|
||||
features['dag_van_de_week'] = timestamp.dayofweek
|
||||
features['maand'] = timestamp.month
|
||||
features['dag_van_het_jaar'] = timestamp.dayofyear
|
||||
|
||||
# 2. Weer-features (direct uit de data)
|
||||
weer_cols = ['temperatuur', 'gevoelstemperatuur', 'neerslag', 'wind_richting',
|
||||
'wind_snelheid', 'bewolking', 'luchtdruk', 'luchtvochtigheid']
|
||||
for col in weer_cols:
|
||||
features[col] = data_nu[col]
|
||||
|
||||
# 3. Lag-features (van vorige uren)
|
||||
features['prijs_1u_geleden'] = df.loc[timestamp - timedelta(hours=1)]['gemiddelde_prijs']
|
||||
features['prijs_24u_geleden'] = df.loc[timestamp - timedelta(hours=24)]['gemiddelde_prijs']
|
||||
|
||||
# 4. Rolling-features (gemiddelden van vorige uren)
|
||||
features['temp_avg_3u'] = df.loc[timestamp - timedelta(hours=2) : timestamp]['temperatuur'].mean()
|
||||
features['prijs_avg_6u'] = df.loc[timestamp - timedelta(hours=5) : timestamp]['gemiddelde_prijs'].mean()
|
||||
|
||||
# Converteer naar een DataFrame met de juiste kolomvolgorde
|
||||
return pd.DataFrame([features], columns=FEATURES)
|
||||
|
||||
|
||||
# --- START VAN HET SCRIPT ---
|
||||
try:
|
||||
# 1. Laad het getrainde model
|
||||
print(f"Laden van model: {MODEL_FILE}...")
|
||||
model = xgb.XGBRegressor()
|
||||
model.load_model(MODEL_FILE)
|
||||
print("✅ Model succesvol geladen.")
|
||||
|
||||
# 2. Maak verbinding met de database
|
||||
conn = mysql.connector.connect(**DB_CONFIG)
|
||||
|
||||
# 3. Haal alle data op (historie + toekomstig weer)
|
||||
werk_df = haal_data_uit_database(conn)
|
||||
|
||||
if werk_df is not None:
|
||||
# 4. Zoek de uren die we moeten voorspellen
|
||||
# (Dit zijn de uren waar 'gemiddelde_prijs' NULL is)
|
||||
te_voorspellen_tijden = werk_df[werk_df['gemiddelde_prijs'].isnull()].index
|
||||
|
||||
print(f"\n🧠 Start iteratieve voorspelling voor {len(te_voorspellen_tijden)} uur...")
|
||||
|
||||
voorspellingen = []
|
||||
|
||||
# 5. De Voed-Terug-Lus
|
||||
for timestamp in te_voorspellen_tijden:
|
||||
# a. Maak features voor dit uur (gebruikt data van vorige uren)
|
||||
features_nu = maak_features_voor_uur(werk_df, timestamp)
|
||||
|
||||
# b. Maak de voorspelling
|
||||
voorspelde_prijs = model.predict(features_nu)[0]
|
||||
|
||||
# c. VOED TERUG: Sla de voorspelling op in het 'werkblad'
|
||||
# zodat het volgende uur deze kan gebruiken!
|
||||
werk_df.loc[timestamp, 'gemiddelde_prijs'] = voorspelde_prijs
|
||||
|
||||
# d. Sla op voor het eindresultaat
|
||||
voorspellingen.append(voorspelde_prijs)
|
||||
|
||||
# 6. Toon de resultaten
|
||||
print("\n" + "="*70)
|
||||
print(f"--- VOORSPELDE PRIJZEN (komende {len(te_voorspellen_tijden)} uur) ---")
|
||||
|
||||
resultaat_df = pd.DataFrame({
|
||||
'Voorspelde_Prijs': voorspellingen
|
||||
}, index=te_voorspellen_tijden)
|
||||
|
||||
print(resultaat_df)
|
||||
print("="*70)
|
||||
|
||||
except Error as e:
|
||||
print(f"❌ Fout met MySQL verbinding: {e}")
|
||||
except FileNotFoundError:
|
||||
print(f"❌ Fout: Model bestand '{MODEL_FILE}' niet gevonden.")
|
||||
except Exception as e:
|
||||
print(f"❌ Een onverwachte fout is opgetreden: {e}")
|
||||
finally:
|
||||
if 'conn' in locals() and conn.is_connected():
|
||||
conn.close()
|
||||
print("\nVerbinding met MySQL gesloten.")
|
||||
180
voorspel_advanced.py
Normal file
180
voorspel_advanced.py
Normal file
@@ -0,0 +1,180 @@
|
||||
import pandas as pd
|
||||
import numpy as np
|
||||
import xgboost as xgb
|
||||
import mysql.connector
|
||||
from mysql.connector import Error
|
||||
from datetime import datetime, timedelta
|
||||
import holidays # NIEUW: importeer holidays
|
||||
|
||||
# --- CONFIGURATIE ---
|
||||
# BELANGRIJK: Verwijs naar je NIEUWE model
|
||||
MODEL_FILE = 'price_forecast_model_v1_5.json'
|
||||
TARGET = 'gemiddelde_prijs'
|
||||
AANTAL_UUR_VOORSPELLEN = 72 # Hoeveel uur vooruit wil je kijken?
|
||||
|
||||
DB_CONFIG = {
|
||||
'host': '192.168.178.201',
|
||||
'user': 'energy_prices_user',
|
||||
'password': 'kS9R*xp17ZwCD@CV&E^N',
|
||||
'database': 'energy_prices',
|
||||
'port': 3307
|
||||
}
|
||||
|
||||
# NIEUW: Haal de lijst van features uit je model
|
||||
# We hoeven de lijst niet meer handmatig te typen!
|
||||
try:
|
||||
print(f"Laden van model: {MODEL_FILE}...")
|
||||
model = xgb.XGBRegressor()
|
||||
model.load_model(MODEL_FILE)
|
||||
FEATURES = model.feature_names_in_ # Pakt automatisch alle feature-namen
|
||||
print(f"✅ Model succesvol geladen (verwacht {len(FEATURES)} features).")
|
||||
except FileNotFoundError:
|
||||
print(f"❌ Fout: Model bestand '{MODEL_FILE}' niet gevonden.")
|
||||
print("Heb je het 'v1_5' model al getraind en opgeslagen?")
|
||||
exit()
|
||||
except Exception as e:
|
||||
print(f"❌ Fout bij laden model: {e}")
|
||||
exit()
|
||||
|
||||
# Maak de feestdagen-checker klaar
|
||||
nl_holidays = holidays.Netherlands(years=[datetime.now().year, datetime.now().year + 1])
|
||||
|
||||
|
||||
def haal_data_uit_database(conn):
|
||||
# ... (Deze functie is 100% IDENTIEK aan je vorige script)
|
||||
# ... (Kopieer de 'haal_data_uit_database' functie hier)
|
||||
print("💾 Data ophalen uit MySQL...")
|
||||
|
||||
query_hist = """
|
||||
SELECT
|
||||
w.datum_tijd, w.temperatuur, w.gevoelstemperatuur, w.neerslag,
|
||||
w.wind_richting, w.wind_snelheid, w.bewolking, w.luchtdruk, w.luchtvochtigheid,
|
||||
p_avg.gemiddelde_prijs
|
||||
FROM
|
||||
amersfoort_weer_uurlijks AS w
|
||||
LEFT JOIN -- <--- DE OPLOSSING
|
||||
(SELECT datetime, AVG(price) AS gemiddelde_prijs
|
||||
FROM dynamic_price_data GROUP BY datetime) AS p_avg
|
||||
ON w.datum_tijd = p_avg.datetime
|
||||
WHERE
|
||||
w.datum_tijd BETWEEN (NOW() - INTERVAL 30 HOUR) AND NOW()
|
||||
ORDER BY
|
||||
w.datum_tijd;
|
||||
"""
|
||||
|
||||
query_toekomst = f"""
|
||||
SELECT
|
||||
datum_tijd, temperatuur, gevoelstemperatuur, neerslag,
|
||||
wind_richting, wind_snelheid, bewolking, luchtdruk, luchtvochtigheid,
|
||||
NULL AS gemiddelde_prijs
|
||||
FROM
|
||||
amersfoort_weer_uurlijks
|
||||
WHERE
|
||||
datum_tijd BETWEEN NOW() AND (NOW() + INTERVAL {AANTAL_UUR_VOORSPELLEN} HOUR)
|
||||
ORDER BY
|
||||
datum_tijd;
|
||||
"""
|
||||
|
||||
try:
|
||||
hist_df = pd.read_sql(query_hist, conn, index_col='datum_tijd', parse_dates=['datum_tijd'])
|
||||
toekomst_df = pd.read_sql(query_toekomst, conn, index_col='datum_tijd', parse_dates=['datum_tijd'])
|
||||
|
||||
print(f"✅ {len(hist_df)} uur historie geladen.")
|
||||
print(f"✅ {len(toekomst_df)} uur toekomstig weer geladen.")
|
||||
|
||||
# --- OPLOSSING HIER ---
|
||||
# Vul 'gaten' in de historische prijsdata ALLEEN op hist_df
|
||||
hist_df['gemiddelde_prijs'] = hist_df['gemiddelde_prijs'].ffill()
|
||||
hist_df['gemiddelde_prijs'] = hist_df['gemiddelde_prijs'].bfill()
|
||||
# --- EINDE OPLOSSING ---
|
||||
|
||||
# Combineer nu de gevulde historie met de lege toekomst
|
||||
combined_df = pd.concat([hist_df, toekomst_df])
|
||||
|
||||
return combined_df.sort_index()
|
||||
|
||||
except Exception as e:
|
||||
print(f"❌ Fout bij ophalen data: {e}")
|
||||
return None
|
||||
|
||||
|
||||
def maak_features_voor_uur(df, timestamp):
|
||||
"""
|
||||
MAAK FEATURES v1.5 - Deze functie is compleet VERNIEUWD
|
||||
"""
|
||||
features = {}
|
||||
|
||||
# Haal data op van het specifieke uur
|
||||
data_nu = df.loc[timestamp]
|
||||
|
||||
# 1. Tijd-features (simpel)
|
||||
features['maand'] = timestamp.month
|
||||
features['dag_van_het_jaar'] = timestamp.dayofyear
|
||||
|
||||
# 2. Feestdag feature
|
||||
features['is_feestdag'] = 1 if timestamp in nl_holidays else 0
|
||||
|
||||
# 3. Weer-features
|
||||
weer_cols = ['temperatuur', 'gevoelstemperatuur', 'neerslag', 'wind_richting',
|
||||
'wind_snelheid', 'bewolking', 'luchtdruk', 'luchtvochtigheid']
|
||||
for col in weer_cols:
|
||||
features[col] = data_nu[col]
|
||||
|
||||
# 4. Lag-features
|
||||
features['prijs_1u_geleden'] = df.loc[timestamp - timedelta(hours=1)]['gemiddelde_prijs']
|
||||
features['prijs_24u_geleden'] = df.loc[timestamp - timedelta(hours=24)]['gemiddelde_prijs']
|
||||
|
||||
# 5. Rolling-features
|
||||
features['temp_avg_3u'] = df.loc[timestamp - timedelta(hours=2) : timestamp]['temperatuur'].mean()
|
||||
features['prijs_avg_6u'] = df.loc[timestamp - timedelta(hours=5) : timestamp]['gemiddelde_prijs'].mean()
|
||||
|
||||
# 6. ONE-HOT ENCODING (Handmatig)
|
||||
# Voeg alle 7 'dag_' kolommen toe, en zet de juiste op 1
|
||||
for dag in range(7):
|
||||
features[f'dag_{dag}'] = 1 if timestamp.dayofweek == dag else 0
|
||||
|
||||
# Voeg alle 24 'uur_' kolommen toe, en zet de juiste op 1
|
||||
for uur in range(24):
|
||||
features[f'uur_{uur}'] = 1 if timestamp.hour == uur else 0
|
||||
|
||||
# Converteer naar een DataFrame en gebruik de volgorde van het model
|
||||
return pd.DataFrame([features], columns=FEATURES)
|
||||
|
||||
|
||||
# --- START VAN HET SCRIPT ---
|
||||
# (Dit deel is weer 100% identiek aan je vorige script)
|
||||
try:
|
||||
conn = mysql.connector.connect(**DB_CONFIG)
|
||||
werk_df = haal_data_uit_database(conn)
|
||||
|
||||
if werk_df is not None:
|
||||
te_voorspellen_tijden = werk_df[werk_df['gemiddelde_prijs'].isnull()].index
|
||||
|
||||
print(f"\n🧠 Start iteratieve voorspelling voor {len(te_voorspellen_tijden)} uur...")
|
||||
voorspellingen = []
|
||||
|
||||
for timestamp in te_voorspellen_tijden:
|
||||
features_nu = maak_features_voor_uur(werk_df, timestamp)
|
||||
voorspelde_prijs = model.predict(features_nu)[0]
|
||||
werk_df.loc[timestamp, 'gemiddelde_prijs'] = voorspelde_prijs
|
||||
voorspellingen.append(voorspelde_prijs)
|
||||
|
||||
print("\n" + "="*70)
|
||||
pd.set_option('display.max_rows', None) # Zorg dat we alles printen
|
||||
print(f"--- VOORSPELDE PRIJZEN (komende {len(te_voorspellen_tijden)} uur) ---")
|
||||
|
||||
resultaat_df = pd.DataFrame({
|
||||
'Voorspelde_Prijs': voorspellingen
|
||||
}, index=te_voorspellen_tijden)
|
||||
|
||||
print(resultaat_df)
|
||||
print("="*70)
|
||||
|
||||
except Error as e:
|
||||
print(f"❌ Fout met MySQL verbinding: {e}")
|
||||
except Exception as e:
|
||||
print(f"❌ Een onverwachte fout is opgetreden: {e}")
|
||||
finally:
|
||||
if 'conn' in locals() and conn.is_connected():
|
||||
conn.close()
|
||||
print("\nVerbinding met MySQL gesloten.")
|
||||
BIN
weer_amersfoort_2024.db
Normal file
BIN
weer_amersfoort_2024.db
Normal file
Binary file not shown.
BIN
weer_amersfoort_2025.db
Normal file
BIN
weer_amersfoort_2025.db
Normal file
Binary file not shown.
Reference in New Issue
Block a user