Nivara 0.9.5

dotnet add package Nivara --version 0.9.5
                    
NuGet\Install-Package Nivara -Version 0.9.5
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Nivara" Version="0.9.5" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Nivara" Version="0.9.5" />
                    
Directory.Packages.props
<PackageReference Include="Nivara" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Nivara --version 0.9.5
                    
#r "nuget: Nivara, 0.9.5"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Nivara@0.9.5
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Nivara&version=0.9.5
                    
Install as a Cake Addin
#tool nuget:?package=Nivara&version=0.9.5
                    
Install as a Cake Tool

Nivara

A high-performance, columnar DataFrame library for .NET, focused on type safety, explicit null semantics, and vectorized execution.

Nivara is designed for developers who want predictable behavior, strong typing, and performance-oriented data processing without relying on dynamic or NaN-based conventions.


Why Nivara

Most DataFrame-style libraries trade correctness and type safety for convenience. Nivara takes a different approach:

  • Strong typing end-to-end — column types are explicit and enforced
  • Explicit null handling — no NaN-based semantics or hidden behavior
  • Immutable data model — operations return new data structures
  • Vectorized execution where it matters — SIMD via System.Numerics
  • Schema-aware query planning — errors surface early, not at runtime

If you care about correctness, debuggability, and performance in .NET data processing, Nivara is built for you.


Installation

Core library:

dotnet add package Nivara

Optional extensions and I/O integrations (install when you need file formats, Arrow interoperability, or ML integration):

dotnet add package Nivara.Extensions

Quick Start

using Nivara;
using Nivara.Linq;

// Create typed columns
var ages = NivaraColumn<int>.Create(new[] { 25, 30, 35 });
var names = NivaraColumn<string>.CreateForReferenceType(new[] { "Alice", "Bob", "Charlie" });

// Combine into a DataFrame
var frame = NivaraFrame.Create(
    ("Name", names),
    ("Age", ages)
);

// Query with lazy evaluation
// Query with lazy evaluation (LINQ-like)
var adults = frame.AsQueryFrame()
    .Where(x => x["Age"] > 30)
    .Select(x => x["Name"])
    .ToNivaraFrame();

Console.WriteLine(adults.RowCount); // 1 (Charlie)

Core Features

Typed Columns and DataFrames

  • Strongly typed, immutable columns with automatic storage selection
  • Schema-aware frames with validation and type safety
  • Explicit null handling using validity masks (no NaN semantics)

Query Engine

  • Lazy query construction with true LINQ-like syntax (Where, Select, OrderBy)
  • Automatic query optimization (predicate pushdown, projection pushdown, operation fusion)
  • Multiple execution strategies (lazy, eager, streaming, parallel) — all fully implemented with integrated performance diagnostics

Performance

  • Vectorized operations using System.Numerics.Tensors for numeric types
  • Automatic storage backend selection (tensor vs memory)
  • SIMD acceleration where applicable with scalar fallbacks

Data Operations

  • Row Operations: Filtering, slicing, sorting with null-aware semantics
  • Column Operations: Transformations, projections, renaming, computed columns
  • Join Operations: Inner, Left, Right, Full Outer joins with flexible key mapping
  • Aggregation: GroupBy operations with vectorized aggregate functions
  • Concatenation: Vertical and horizontal DataFrame combination

Data Sources and I/O

  • CSV and JSON lazy data sources with schema inference
  • Parquet file I/O with compression support (via Nivara.Extensions)
  • Apache Arrow interoperability (via Nivara.Extensions)

Developer Experience

  • Comprehensive error handling with structured exceptions
  • Performance diagnostics and query plan inspection
  • Fluent API with method chaining
  • Early error detection through schema validation

Getting Started

For detailed examples and tutorials, see GETTING-STARTED.md.

For comprehensive API documentation and advanced usage patterns, explore the samples in the samples/ directory.


Current Capabilities

Nivara aims to bring predictable, high-performance data processing to the .NET ecosystem — without sacrificing correctness or clarity.

Nivara currently supports:

  • Core Data Structures: Typed, immutable columns and frames with automatic storage selection
  • Null Handling: Explicit null handling with fill and drop operations, comprehensive null mask tracking
  • Performance: Vectorized arithmetic and comparisons using System.Numerics.Tensors
  • Storage: High-performance tensor-backed storage for numeric types, memory-based storage for reference types
  • Query Engine: Schema-aware lazy query construction with automatic optimization, OperationType constants, diagnostics and plan inspection
  • Data Sources: CSV and JSON lazy data sources with automatic schema inference
  • Row Operations: Filtering with boolean masks, slicing with Take/Skip operations, and arbitrary row range selection
  • Sorting Operations: Multi-column sorting with configurable direction, null ordering, and stable sort semantics
  • Column Transformations: Type-safe element-wise transformations with null propagation and exception handling
  • Column Projections: Flexible column selection, renaming, exclusion, and computed column generation
  • Join Operations: Inner, Left, Right, and Full Outer joins with flexible key mapping, column disambiguation, and null-aware matching
  • Aggregate Functions: Sum, Average, Min, Max with vectorized operations and null-aware computation
  • Grouping Operations: Hash-based GroupBy with composite key support and efficient group management
  • Aggregation Framework: Extensible aggregation system with built-in functions (Count, Sum, Min, Max, Mean) and vectorized execution
  • Parquet I/O: Full read/write support with compression, streaming, and batch operations (via Nivara.Extensions)
  • Apache Arrow: Bidirectional conversion with zero-copy optimization support (via Nivara.Extensions)
  • ML.NET Integration: Tensor conversion helpers for machine learning workflows (via Nivara.Extensions)
  • Performance Optimization: Buffer pooling, memory management, query optimization engine, async I/O operations, and integrated execution diagnostics via ExecutionEngine.LastDiagnostics
  • Automatic Differentiation: Reverse-mode autodiff for float and double columns with a full training stack — module system (Linear, Sequential), optimizers (SGD, Adam, AdamW), training loops, data-parallel training, and model serialization (core)

Documentation

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Nivara:

Package Downloads
Nivara.Extensions

I/O adapters, Parquet, Apache Arrow, ML.NET integration, and automatic differentiation for Nivara

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.9.5 124 6/13/2026

Core column/Frame APIs, LINQ-like query engine, tensor-accelerated arithmetic and comparisons, lazy/eager/streaming/parallel execution strategies, CSV/JSON data sources, row filtering/slicing/sorting, join operations (inner/left/right/full outer), GroupBy with vectorized aggregates, column transformations and projections, schema-aware query planning with predicate pushdown and operation fusion, explicit null mask semantics, performance diagnostics, buffer pooling.