Démonstration de Xcorr Acorr

PythonPythonBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Le but de ce laboratoire est de démontrer l'utilisation de graphiques de corrélation croisée et d'auto-corrélation à l'aide de la bibliothèque Python Matplotlib. La corrélation croisée et l'auto-corrélation sont des outils mathématiques utilisés pour mesurer la similarité entre deux signaux. La corrélation croisée mesure la similarité entre deux signaux différents, tandis que l'auto-corrélation mesure la similarité entre un signal et une version retardée dans le temps de lui-même. Ces outils sont couramment utilisés dans le traitement du signal, l'analyse d'images et l'analyse de séries temporelles.

Conseils sur la machine virtuelle

Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Notebook pour accéder à Jupyter Notebook pour la pratique.

Parfois, vous devrez peut-être attendre quelques secondes pour que Jupyter Notebook ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations de Jupyter Notebook.

Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.

Importation des bibliothèques

Tout d'abord, nous devons importer les bibliothèques nécessaires. Dans ce laboratoire, nous allons utiliser NumPy et Matplotlib.

import matplotlib.pyplot as plt
import numpy as np

Générer des données aléatoires

Ensuite, nous allons générer deux tableaux de données aléatoires à l'aide de NumPy. Nous utiliserons ces tableaux pour démontrer la corrélation croisée et l'auto-corrélation.

np.random.seed(19680801)
x, y = np.random.randn(2, 100)

Tracer la corrélation croisée

Nous allons maintenant tracer la corrélation croisée entre les deux tableaux à l'aide de la fonction xcorr dans Matplotlib.

fig, ax = plt.subplots()
ax.xcorr(x, y, usevlines=True, maxlags=50, normed=True, lw=2)
ax.grid(True)
plt.show()

La fonction xcorr prend les paramètres suivants :

  • x : le premier tableau de données
  • y : le second tableau de données
  • usevlines : booléen, indique s'il faut tracer des lignes verticales allant de 0 à la valeur de corrélation
  • maxlags : entier, le nombre maximum de retards pour lesquels calculer la corrélation
  • normed : booléen, indique s'il faut normaliser les valeurs de corrélation
  • lw : entier, la largeur de la ligne pour le tracé

Tracer l'auto - corrélation

Nous allons maintenant tracer l'auto - corrélation du tableau x à l'aide de la fonction acorr dans Matplotlib.

fig, ax = plt.subplots()
ax.acorr(x, usevlines=True, normed=True, maxlags=50, lw=2)
ax.grid(True)
plt.show()

La fonction acorr prend les paramètres suivants :

  • x : le tableau de données pour lequel calculer l'auto - corrélation
  • usevlines : booléen, indique s'il faut tracer des lignes verticales allant de 0 à la valeur de corrélation
  • normed : booléen, indique s'il faut normaliser les valeurs de corrélation
  • maxlags : entier, le nombre maximum de retards pour lesquels calculer la corrélation
  • lw : entier, la largeur de la ligne pour le tracé

Sommaire

Dans ce laboratoire, nous avons appris à utiliser les tracés de corrélation croisée et d'auto - corrélation dans Python Matplotlib. Nous avons tout d'abord importé les bibliothèques nécessaires, puis généré des données aléatoires à l'aide de NumPy. Nous avons ensuite tracé la corrélation croisée et l'auto - corrélation des données à l'aide des fonctions xcorr et acorr dans Matplotlib. Ces outils sont utiles pour mesurer la similarité entre deux signaux et sont couramment utilisés dans le traitement du signal, l'analyse d'images et l'analyse de séries temporelles.