Note that there are some explanatory texts on larger screens.

plurals
  1. POWhat's a succinct, useful and efficient way to store large time-series in F#?
    text
    copied!<p>I'm currently learning F# and I'm exploring using it to analyse financial time-series. Can anyone recommend a good data structure to store time-series data in?</p> <p>F# offers a rich selection of native types and I'm looking for a some simple combination that would provide an elegant, succinct and efficient solution.</p> <p>I'm looking store tick data, which consists of millions of records each with a time stamp, and several (~5-20) fields of numerical and textual data, with possible missing values.</p> <p>My first thoughts are perhaps a sequence of tuples or records, but I was wondering if someone could kindly suggest something that has worked well in the real world.</p> <p>EDIT:</p> <p>A few extra points for clarification:</p> <p>The common operations that I'm likely to require are: </p> <ul> <li>Time based lookup - i.e. find the most recent data point at a given time</li> <li>Time based joins</li> <li>Appends (Updates and deletes are going to be rare. )</li> </ul> <p>I should make it clear I'm exploring using F# primarily as an interactive tool for research, with the ability to compile as a (really big) added bonus.</p> <p>ANOTHER EDIT:</p> <p>I should also have mentioned, my role/use of F# and this data is purely within research not development. The intention being that once we understand the data (and what we want to do with it) better then we can later specify tools that our developers would build. Such as data warehouses etc. at which we'd start using their data structures etc. </p> <p>Although, I am concerned that our models are computationally intensive, use a lot of memory and can't always be coded in a recursive manner. So we many end up having to query out large chunks anyway.</p> <p>I should also say that I've always used Matlab or R for these sorts of tasks before but I'm now interested in F# as it offers that interactive, high level flexibility for Research but the same code can be used in production.</p> <p>My apologies for not giving this context information at the start (It's my first question), I can see now that it helps people form their answers. </p> <p>My thanks again to everyone that's taken the time to help me.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload