Cross-Correlation Calculator — Advanced

❓Xcorr 🏠Home 🧮Basic Video
📘 How to use this — copy and paste CSV, TSV, or spreadsheet data

What this page adds. The basic calculator correlates up to three columns in your browser, with y1 as the reference. This page takes any number of columns, lets you choose the reference, adds the FFT method for long records, and refines each peak between two samples. To do that it sends your table to the server, computes there, and sends the numbers back. Nothing is stored, but the data does leave your machine. If that matters for your data, use the basic page. The cross-correlation article explains each step.

Correlation needs evenly spaced samples, within 0.1%, in every column; t must be time in seconds. Uneven t is refused, naming the first t that breaks the step. Remove a trend first - a trend correlates with itself at every lag.

  1. Paste your data into the Input grid — straight from a spreadsheet, or as CSV/TSV text — or import a file. First column is t (s), then one column per series: y1, y2, … Rows are sorted by t.
  2. Pick a method.
    • direct: the sums of the article's Math 3, up to 5,000 rows.
    • FFT: the same numbers through the Fourier transform, fast for long records, up to the server's row limit.
  3. Pick a mode. Cross compares every column with the reference column: a positive lag means the column is later than the reference. Auto compares each column with itself, to find a period.
  4. Pick the normalization. Biased divides by the full record length; unbiased by the number of pairs at each lag.
  5. Real time range — try settings live on the max lag and reference boxes.
    • ▲▼ buttons or the mouse wheel over a box: the value moves and the result is recomputed shortly after the last step - one request to the server, not one per step.
    • Digit wheel: over a box, the wheel steps the digit just left of the mouse pointer.
    • Limits: each value stays within its range; a typed value outside it is set to the nearest limit.
    • Typing or the arrow keys change the box only; press correlate to recompute.
  6. Press correlate. The upper chart shows your data; the lower chart shows r against lag with the ±1.96/√N band. The status line gives each peak lag or period, refined between samples by a parabola through the top three points. The server's time shows beside the button.
  7. Read the result. The Output grid lists the lag in seconds, then r for each pair or column. Export saves it as a CSV/TSV file.

Input

Output

Signal

Correlation