Overview
Introduction
Features
Documentation
QuickStart Samples
Sample Applications
Downloads
Get it now!
Download trial version
How to Buy
Information
Contact Us
Our customers

This is a partial list of companies who are using our libraries:

ABB Robotics
Allstate
Arcam
Astra Schedule
Babson College
Canadian Council on Learning
Canyon Associates
Caxton Associates
CECity
Constellation Energy
CreditSights
DeepOcean
Duke University
Dynamotive
Elecsoft
Engelhard Corporation
Epcor
Equipoise Software
Galileo International
GAM UK
Gammex
GlaxoSmithKline
Global Matrix
The Hartford
Infinera Corporation
Intel
JDS Uniphase
LaBranche & Co.
Learning & Skills Council
Jacobs Consultancy
Litman Gregory
Lucas Systems
Malvern Instruments
Medrio
Merck & Co.
Mintera.
Monitor Software
MorningStar
NanoString Technologies
Paletta Invent
Parametric Portfolio Associates
Prosanos
RATA Associates
RiskShield
Ramboll
Standard & Poor's
Strategic Analysis Corporation
Univ. of Alicante
Univ. of South Carolina
vielife
Xerox
US Army

Skip Navigation LinksHome»Features»Data Analysis Library Features

Try it now

Latest version 8.1.20 (August 2023)

Try it for free with our fully functional 30-day trial.

nuget Get from
Nuget

Extreme Optimization Numerical Libraries for .NET

Data Analysis Library Features

The Extreme Optimization Numerical Libraries for .NET includes classes for the following subject areas. Also see the detailed Mathematics, Vector and Matrix, and Statistics feature lists.

Download the trial version today!

General

  • Full featured Data Frames (similar to R and pandas).
  • Vector elements can have labels. Matrices can have row and column labels.
  • A large set of aggregators and aggregator functions.
  • Large set of groupings, including moving windows, 2D pivot tables, and time-based resampling.
  • New generic Descriptives class for collecting descriptive statistics of vectors.
  • Indexes on ordered types support lookup nearest. Likewise, data frames with such indexes now support join on nearest.
  • New Recurrence type lets you specify date/time patterns for use in, for example, resampling of data frames.

Data frames

  • Column-based in-memory database tables.
  • Index rows and columns based on position or key.
  • Add, insert, remove, rename, transform columns.
  • Perform joins between data frames on indexes and/or columns.
  • Join-to-nearest on ordered row indexes.
  • Filter data frames on position, keys, boolean mask.
  • Data frames can be passed directly to statistical and machine learning models.

Indexes

  • A collection of labels for the rows and columns in a data frame or matrix or the elements of a vector..
  • Multi-level indexes are supported.
  • Indexes are automatically propagated through calculations.
  • Operations on vectors and matrices are automatically aligned on their indexes.

Aggregators

  • All the standard aggregators (Max/Min, Sum, Mean...).
  • Automatically convert to intermediate values (for example: compute the mean of a set of integers using doubles)
  • Aggregations can be applied to data frames, vectors, matrices, tensors.
  • Aggregations return a single value per vector input, or multiple values when using a group by.
  • Aggregations can be performed with or without filters for missing values or NaN's.
  • Efficiently compute aggregates over moving windows.

Groupings

  • Group on index or column values, categorical vectors.
  • Group on date/time values using flexible recurrences.
  • Binning based on values or quantiles.
  • Moving windows: fixed size, expanding, condition-dependent.
  • Paritions, both fixed and condition-dependent.
  • Aggregate in two dimensions using pivot tables.