Working with time series data with Incanter Zoo
Data that includes a regular timestamp, or time series data, is very common. Stock prices and weather are just two examples of this. These datasets track values that change over the course of seconds, hours, days, weeks, months, or even years.
Incanter includes a namespace (incanter.zoo
) that makes working with time series data very easy. We can use that to compute running averages and to map other functions over a moving window of the data.
For this, we'll take a look at some stock data for IBM. You can get this from a number of sources, but I downloaded a decade's worth of data from Google Finance (http://www.google.com/finance). You can download the same data from http://www.ericrochester.com/clj-data-analysis/data/ibm.csv.
Getting ready
First, we need to list the dependencies we'll need in our Leiningen project.clj
file. Notice that incanter-zoo
has been included as a separate dependency since it's not distributed with the core Incanter packages...