Table des données brutes

   Table data

Nous avons d'abord créé une table appelée data, contenant les données brutes (en ne gardant toutefois que les colonnes suivantes : la date et l'heure, la température extérieure, l'humidité, la vitesse et la direction du vent, les précipitations pendant l'heure précédente et la pression, les autres étant inutiles pour la suite de l'étude) .

# Création de la table data
c.execute("create table data(date_time text, temp float, humidity float, \
           wind_speed float, wind_direction float, rain_1h float, pressure float, diff_rain float)"
)

Il s'agit d'une réécriture des données envoyées par la station, avec toutefois quelques corrections.

Traitement des données - correction température / vitesse vent

Nous avons considéré qu'il pouvait exister des données erronées dues à des problèmes avec la station météo. Les capteurs de la station peuvent être sales, un oiseau ou une branche peut également gêner la prise des relevées... Ainsi dans la création de la table data, nous avons considéré comme étant une aberration d'avoir un changement de plus de 5 degrés d'une prise à l'autre (10 min). Cette valeur arbitraire peut être changée. Si le changement est supérieur à 5°, nous prenons comme valeur la valeur précédente.

# Correction de la température
grad_t = 5./600
dtemp = temp - temp_prev  #diff de la temperature a l'instant n et la temperature n-1
sign = np.sign(dtemp)
dtemp_max= sign * grad_t * dt  #diff max de temperature possible (basee sur les 5°)
if abs(dtemp) > abs(dtemp_max):
   temp = temp_prev

De la même façon, nous avons limité le vent à 30m/s, soit 108 km/h, ce qui est déjà important. Nous verrons ensuite si ces changements ont d'importants impacts.

On a également affiché ces changements sur la console, ce qui nous donnait ceci:

 

Précipitations

Les valeurs des précipitations données par la station météo ne sont pas les valeurs réelles de la pluie tombée. Il faut en effet soustraire la valeur acquise à l'instant n et celle à l'instant n-1 pour avoir les mm de pluie tombées pendant 10 min. Nous avons donc rentré directement cette différence de précipitations dans la table data.