Plotting the cross-correlation between two variables
If we have two different datasets from two different observations, we want to know if those two event sets are correlated. We want to cross correlate them and see if they match in any way. We are looking for a pattern of a smaller data sample in a larger data sample. The pattern does not have to be an obvious or trivial pattern.
Getting ready
We can use matplotlib's matplotlib.pyplot.xcorr
function from the pyplot lab. This function can plot the correlation between two datasets in such a way that we can see if there is any significant pattern between the plotted values. It is assumed that x
and y
are of the same length.
If we pass the argument normed
as True
, we can normalize by cross-correlation at 0th lag (that is, when there is no time delay or time lag).
Behind the scenes, correlation is done using NumPy's numpy.correlate
function.
Using the argument usevlines
(setting it to True
), we can instruct matplotlib to use vlines()
instead of plot...