FilePrepper 0.2.3

There is a newer version of this package available.
See the version list below for details.
dotnet add package FilePrepper --version 0.2.3
                    
NuGet\Install-Package FilePrepper -Version 0.2.3
                    
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="FilePrepper" Version="0.2.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FilePrepper" Version="0.2.3" />
                    
Directory.Packages.props
<PackageReference Include="FilePrepper" />
                    
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 FilePrepper --version 0.2.3
                    
#r "nuget: FilePrepper, 0.2.3"
                    
#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 FilePrepper@0.2.3
                    
#: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=FilePrepper&version=0.2.3
                    
Install as a Cake Addin
#tool nuget:?package=FilePrepper&version=0.2.3
                    
Install as a Cake Tool

FilePrepper

NuGet Version NuGet Downloads .NET Version License Build Status Tests

A powerful .NET library and CLI tool for CSV/tabular data processing. Process data files without writing code, or integrate into your .NET applications.

Quick Start

CLI Usage (No Coding Required)

# Normalize multiple columns
fileprepper normalize -i data.csv -o output.csv -c "Age,Salary,Score" -m MinMax

# Convert data types
fileprepper convert-type -i data.csv -o output.csv -c "Date:DateTime:yyyy-MM-dd,Age:Integer"

# Fill missing values
fileprepper fill-missing -i data.csv -o output.csv -c "Age,Salary" -m Mean

# Get help for any command
fileprepper normalize --help

Library Usage

var options = new NormalizeDataOption
{
    InputPath = "data.csv",
    OutputPath = "output.csv",
    TargetColumns = new[] { "Age", "Salary" },
    Method = NormalizationMethod.MinMax
};

var task = new NormalizeDataTask(logger);
await task.ExecuteAsync(new TaskContext(options));

Features

20+ Data Operations

  • Manipulation: Add/Remove/Rename/Reorder columns, Column interactions
  • Transformation: Type conversion, Date extraction, Normalization, Scaling, One-hot encoding
  • Analysis: Aggregation, Statistics, Sampling
  • Organization: Deduplication, Filtering, Merging
  • Format: CSV/TSV/JSON/XML conversion, Excel support

Key Capabilities

Multi-column processing - Process multiple columns in single command ✅ Type-safe - Compile-time checking for .NET integration ✅ CLI & Library - Use without coding or integrate programmatically ✅ Error handling - Flexible error strategies with logging ✅ Well-tested - 159 unit tests ensuring reliability

Installation

# Install as global .NET tool
dotnet tool install -g FilePrepper.CLI

# Use anywhere
fileprepper --help
fileprepper normalize -i data.csv -o output.csv -c "Age,Salary" -m MinMax

Library (NuGet)

dotnet add package FilePrepper

See INSTALL.md for detailed installation instructions.

Documentation

Examples

Multi-Column Operations

# Process 3 columns simultaneously
fileprepper normalize -i sales.csv -o normalized.csv \
  -c "Price,Quantity,Revenue" -m MinMax --min 0 --max 1

Data Pipeline

# 1. Fill missing values
fileprepper fill-missing -i raw.csv -o step1.csv -c "Age" -m Mean

# 2. Normalize
fileprepper normalize -i step1.csv -o step2.csv -c "Age,Salary" -m MinMax

# 3. Convert format
fileprepper convert-format -i step2.csv -o final.json -f JSON

Programmatic Usage

// Configure multiple column normalization
var options = new NormalizeDataOption
{
    InputPath = "data.csv",
    OutputPath = "output.csv",
    TargetColumns = new[] { "Col1", "Col2", "Col3" },
    Method = NormalizationMethod.ZScore,
    IgnoreErrors = true
};

// Execute
var task = new NormalizeDataTask(logger);
var result = await task.ExecuteAsync(new TaskContext(options));

Requirements

  • .NET 9.0 or later
  • Cross-platform (Windows, Linux, macOS)
Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.4.8 138 11/16/2025
0.4.7 247 11/14/2025
0.4.5 287 11/13/2025
0.4.3 263 11/10/2025
0.4.0 191 11/3/2025
0.2.3 190 11/3/2025
0.2.2 154 1/17/2025
0.2.1 132 1/16/2025
0.2.0 159 1/11/2025
0.1.1 167 12/16/2024
0.1.0 161 12/6/2024