Les saisons se remplacent plus tôt d'année en année à Kemerovo

Une fois de plus, grincant des dents, j'ai complètement attaché ma veste et accéléré mon rythme, me précipitant pour travailler. Au travail, du café chaud, une unité de système chaude et des tâches intéressantes. Mais ils ne tournaient pas dans ma tête, tandis que le vent froid fouillait dans ma poitrine, mais une légère vague suspicion sur les saisons changeantes. Il fallait vérifier si le réchauffement et le refroidissement étaient arrivés à temps, et pas plus tôt? Peut-être que les saisons sont décalées?


Il va sans dire qu'à mon arrivée au travail, j'ai oublié de penser à ma vague suspicion. Mais elle ne s'est pas complètement dissipée, mais a parfois surgi dans ma tête lorsque, par exemple, j'ai souffert de la chaleur en mai ou vu un arbre jaunir en juillet.



Donc, sans vraiment suivre le principe selon lequel il faut commencer à se faire une idée dans les 48 premières heures, après plusieurs mois j'ai fait quelques recherches pour tester mes soupçons. Un rappel était un article sur Gismeteo .


Les données


La première étape consistait à obtenir les données. Il s'est avéré que trouver les températures moyennes quotidiennes n'est pas aussi simple qu'il y paraît. Après cinq minutes de recherche sur Google, je suis tombé sur une question sur le grille-pain , où je suis arrivé sur le site www.ncdc.noaa.gov . Mais les données reçues ne m'ont pas satisfait (nombreuses omissions dans les dates), ont continué à googler, ont obtenu ce que je cherchais sur le site http://aisori-m.meteo.ru/waisori/ .


Morceau de données:


29645 1955 1 1 "-31.0" 29645 1955 1 2 "-23.8" 29645 1955 1 3 "-18.7" 29645 1955 1 4 "-13.3" 29645 1955 1 5 "-16.8" 29645 1955 1 6 "-16.8" 29645 1955 1 7 "-18.6" 29645 1955 1 8 "-17.0" 29645 1955 1 9 "-6.7" 29645 1955 1 10 "-10.4" 

Obtention de températures annuelles avec un décalage


Tout d'abord, j'ai converti le csv avec les données en un tableau d'objets.


Il a ensuite écrit une fonction qui renvoyait un an du tableau avec un décalage d'un certain nombre de jours.
Plus en détail, nous avons un tel morceau du tableau:


 ... 1955 12 29 -34.5 1955 12 30 -37.7 1955 12 31 -36.3 1956 1 1 -29.2 1956 1 2 -32.9 1956 1 3 -38.1 1956 1 4 -36.6 ... 

Si vous demandez toutes les données de 1956 dans la fonction, elle est simplement retournée, et si vous demandez des données avec un décalage de -1 jour, la température de chaque jour sera prise à partir du jour précédent. Soit, pour le 1er janvier 1956, la température sera prise le 31 décembre 1955


 ... 1956 1 1 -36.3 ← ( 1955 12 31) 1956 1 2 -29.2 ← ( 1956 1 1) 1956 1 3 -32.9 ← ( 1956 1 2) 1956 1 4 -38.1 ← ( 1956 1 3) ... 

Obtenir la température mensuelle moyenne


Dans la tranche résultante du tableau pour l'année, j'ai calculé les températures mensuelles moyennes, obtenant ainsi un vecteur de température pour l'année.


 [ -16.716129032258067, -16.317857142857143, -17.690322580645155, -11.57333333333333, 0.3967741935483872, 9.163333333333332, 17.845161290322586, 17.225806451612904, 15.490000000000004, 9.922580645161291, 1.7233333333333334, -8.26774193548387 ] 

Distance entre les années de décalage


Si j'ai un vecteur de température pendant un an, je peux comparer la distance entre les vecteurs.
Autrement dit, si le temps n'avait guère changé d'année en année, la distance entre les vecteurs serait nulle. À partir de là, j'ai décidé de comparer, par exemple, le vecteur 2001 et tous les vecteurs 2002 obtenus par l'offset.


 ... 2001  == 2002  -2  2001  == 2002  -1  2001  == 2002  2001  == 2002  +1  2001  == 2002  +2  ... 

Après avoir pris le décalage de cette comparaison, où la distance entre les vecteurs est minimale. Autrement dit, s'il s'avère que la distance entre 2001 et 2002 +2 minimale, alors la saison 2002 a été décalée de 2 jours par rapport à 2001.


En regardant vers l’avenir, je dirai que j’ai pris 1956 pour la première année et j’ai regardé le changement pendant 30 jours dans les deux sens.


Nous distinguons le code


J'ai programmé l'algorithme sur js et créé un petit site pour une vérification facile.
Code source sur github .


Vérification des hypothèses


Kemerovo


Ouais! Les saisons ont commencé à changer plus rapidement à partir de 2013 de 10 jours, et en moyenne depuis 1956 de 8 jours!


Moscou


Il n'y a presque pas de déplacement.


Arkhangelsk



Kaliningrad



Saint-Pétersbourg



Tyumen



Vladivostok



Conclusion


La sensation n'a pas été trompée, mais les sensations doivent encore être vérifiées.


PS En fait, je cherchais Novossibirsk. Sur le site de Novossibirsk n'était pas, mais Kemerovo j'étais entièrement satisfait.


PPS Comme il s'est avéré un peu plus tard, le fichier manquait en 2018, et j'avais besoin de ce janvier, j'ai donc téléchargé le mois manquant sur le site pogodaiklimat.ru .

Source: https://habr.com/ru/post/fr421077/


All Articles