Analyse spectrale#
Chargement et affichage du signal :
x = np.loadtxt("../_static/files/consommation.csv",
delimiter=",", skiprows=1, usecols=2)

Spectre du signal…

La phase est, comme la plupart des signaux réels, difficile à analyser… Mais le module est informatif.
En zoomant sur les fréquences basses du spectre (matplotlib.pyplot.xlim
), on peut identifier les fréquences principales.
La fonction scipy.signal.find_peaks
peut aider à trouver les pics.
peaks, _ = find_peaks(module, height=1e8)

On peut alors afficher les fréquences des raies principales, et la période correspondante.
0.006 h^-1 : 168.143 h (7.006 jours)
0.042 h^-1 : 24.000 h (1.000 jours)
0.083 h^-1 : 12.000 h (0.500 jours)
On retrouve là les périodicités hebdomadaire, quotidienne et même sur 12 heures de la consommation électrique.