# tktax-stats

TKTAX-Stats is a Rust library providing a comprehensive toolkit for transaction-based statistical evaluation. It integrates seamlessly with the TKTAX ecosystem:

- **`tktax_3p`**  
- **`tktax_money`**  
- **`tktax_transaction`**  

Its core functionality revolves around aggregating a slice of [`Transaction`](#) objects to derive a variety of relevant statistics—count, measures of central tendency, outlier detection, skewness (from Greek κυρτός, *kurtos*, “curved”), kurtosis (also from Greek κυρτός), etc.—all in dimensionless form (Latin *dimensionem*, “measure”) or monetary form.

## Features

- **`TxSummaryStatistics`** struct for robust summarization:
  - **Minimum, Maximum, Midrange, Median, Mean**  
  - **Standard Deviation, Skewness, Kurtosis**  
  - **Quartiles and Interquartile Range (IQR)**  
  - **Outlier Detection**  
  - **Repeated Values Computation**  
  - **Cumulative Frequency (optional output)**  

- **Interpretation Utilities**:  
  - Helper method [`write_summary_statistics_interpretation_notes()`](#) clarifies skewness and kurtosis in plain language.

## Usage Example

```rust
use tktax_stats::{
    print_categorized_transaction_summary_statistics,
    write_summary_statistics_interpretation_notes
};

// Suppose we have a list of transaction references:
let transactions: Vec<&Transaction> = vec![/* references to your Tx objects */];

// Print a categorized statistical overview:
print_categorized_transaction_summary_statistics(&transactions);

// Optionally, write interpretive notes:
write_summary_statistics_interpretation_notes();
```

## Minimum Supported Rust Version

- Requires Rust 2024 edition.

## License

Choose a license that suits your needs (e.g., MIT, Apache-2.0, etc.) and specify it here.

---

**Enjoy robust and extensible transaction analytics with TKTAX-Stats!**
