QuickStatistics.Net
2.2.0
See the version list below for details.
dotnet add package QuickStatistics.Net --version 2.2.0
NuGet\Install-Package QuickStatistics.Net -Version 2.2.0
<PackageReference Include="QuickStatistics.Net" Version="2.2.0" />
paket add QuickStatistics.Net --version 2.2.0
#r "nuget: QuickStatistics.Net, 2.2.0"
// Install QuickStatistics.Net as a Cake Addin #addin nuget:?package=QuickStatistics.Net&version=2.2.0 // Install QuickStatistics.Net as a Cake Tool #tool nuget:?package=QuickStatistics.Net&version=2.2.0
Statistics-Helper-Library
this library contains some lightweight math functions for my projects. The main purpose is to obtain fast, reliable and well performing statistics on live fed data. This is particularly useful on Sensor Data, Spot Data or to get statistics on data where the dataset is simply too large to fit into memory.
The focus is on simplicity, stability and the utmost performance which I'm personally able to archieve through my skills.
It is not about errorhandling. Make sure, you feed quality data. Garbage in, Garbage out. While I try to add unit tests to my projects, do a quick test yourself and check if the data pushed out by this library actually makes sense to you.
Current implementations
Average
- Moving average
using QuickStatistics.Net.Average_NS;
// Create a new Moving_Average_Double object with a total tracking time of 2 hours and a value resolution of 1 minute
Moving_Average_Double ma = new Moving_Average_Double(TimeSpan.FromHours(2), TimeSpan.FromMinutes(1));
// Add some values to the moving average
ma.AddValue(5);
ma.AddValue(6);
ma.AddValue(7);
// Get the current value of the moving average
double currentValue = ma.Value;
// Set the resolution to track the past 3 hours with a value resolution of 15 minutes
ma.SetResolution(TimeSpan.FromHours(3), TimeSpan.FromMinutes(15));
// Add a value with a timestamp of 1 hour ago
ma.AddValue(8, DateTime.Now - TimeSpan.FromHours(1));
// Get the current value of the moving average
currentValue = ma.Value;
// Clear all values in the moving average
ma.Clear();
Averaging
- progressing_Average: a straight forward, very fast, precise implementation for calculating the average value. Limit is int.max (count of values) so it is not suited for an infinite stream of data such as for sensors
- Simple_Exponential_Average: Moving average approximation, very fast and lightweight
- Simple_Moving_Average: Average on the fly (omitting memory restraints and overflow) Supports: AbsoluteRateOfChange, Trend, Momentum, Deviation
- Volumetric average for 2 values (averaging two values by their weight)
- Moving_Average: Time based moving average (good for historic data and data with gaps, also good for targeting a certain time duration or when the input data stream is not consistent in speed) Maps the incoming data to a consistient timeline with variable resolution Supports: AbsoluteRateOfChange, Trend, Momentum, Deviation
Median
Median can be calculated:
- On an array / List
- Procedural upon adding values
- On a rolling time window
Minimum / Maximum
- Calculate Maximum or Minimum for a given amount of Datapoints (useful for sensor Data)
- Calculate Maximum or Minimum for a sliding time window (useful for historical or inconsistent Data)
Statistics
- obtain standard deviation on the fly. (warning: will overflow if ran indefinitely)
- AbsoluteRateOfChange, Trend, Momentum and Deviation on sliding windows (Supported by simple moving average & moving average)
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- QuickCsv.Net (>= 1.0.1)
-
net7.0
- QuickCsv.Net (>= 1.0.1)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on QuickStatistics.Net:
Package | Downloads |
---|---|
BitmapHelper_Net
fix transparency with image convert |
|
ColorHelper.Net
a small library to help converting, mixing and generating colors |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
3.2.1 | 80 | 10/1/2024 |
3.2.0 | 128 | 4/17/2024 |
3.1.3 | 111 | 9/6/2024 |
3.1.2 | 112 | 9/6/2024 |
3.1.0 | 108 | 4/17/2024 |
3.0.0 | 100 | 4/16/2024 |
2.6.0 | 169 | 1/12/2024 |
2.5.1 | 121 | 1/11/2024 |
2.5.0 | 145 | 12/22/2023 |
2.4.0 | 137 | 12/12/2023 |
2.3.4 | 170 | 10/31/2023 |
2.3.3 | 124 | 10/31/2023 |
2.3.2 | 124 | 10/31/2023 |
2.3.1 | 124 | 10/31/2023 |
2.2.1 | 114 | 10/31/2023 |
2.2.0 | 107 | 10/31/2023 |
2.1.2 | 119 | 10/31/2023 |
2.1.0 | 179 | 7/28/2023 |
2.0.0 | 144 | 5/10/2023 |
1.0.1 | 312 | 1/25/2023 |
1.0.0 | 288 | 1/9/2023 |
2.2.0
added capability to Simple Moving Average & Moving average:
- AbsoluteRateOfChange
- Trend
- Momentum
- Deviation
2.1.2
- improved xml documentation on time based minimum maximum
- time based min/max now has better support for adding time values (historic data)
- added xml documentation for timespot value
2.1.1
- Timebased sliding maximum is now public
2.1.0
- Critical fix in ProgressingAverageDecimal
- Massive Documentation improvement
- Made ProgressingAverage Thread Safe
2.0.0
- several bugfixes
- improved unit tests
- Line of moving average is now smoothed out and it follows data gaps better
- added Median functionalities