Skip to main content

A versatile statistical toolkit for Python, featuring core statistical methods, time series analysis, signal processing, and climatology tools

Project description

StatFlow

Python Version License: MIT PyPI Version

A Python library for statistical analysis and data flow management.

Features

  • Statistical Analysis

    • Descriptive statistics
    • Hypothesis testing
    • Regression analysis
    • Time series analysis
    • Probability distributions
  • Data Flow Management

    • Data pipeline construction
    • ETL operations
    • Data validation
    • Data transformation
    • Data quality checks
  • Visualisation

    • Statistical plots
    • Distribution visualisations
    • Time series plots
    • Correlation matrices
    • Custom charting
  • Data Processing

    • Data cleaning
    • Feature engineering
    • Data normalisation
    • Outlier detection
    • Missing value handling

Installation

Prerequisites

  • Python 3.8 or higher
  • pip or conda package manager

Using pip

pip install statflow

Using conda

conda install -c conda-forge statflow

Usage

Basic Usage

from statflow import DataFlow, StatisticalAnalysis

# Create a data flow pipeline
flow = DataFlow()
flow.load_data("data.csv")
flow.clean_data()
flow.transform_data()

# Perform statistical analysis
analysis = StatisticalAnalysis(flow.data)
summary = analysis.descriptive_stats()
correlation = analysis.correlation_matrix()

Advanced Usage

from statflow import TimeSeries, HypothesisTest

# Time series analysis
ts = TimeSeries("time_series_data.csv")
trend = ts.decompose()
forecast = ts.predict(steps=10)

# Hypothesis testing
test = HypothesisTest(sample1, sample2)
result = test.t_test()
p_value = result.p_value

Project Structure

statflow/
├── statflow/              # Main package directory
│   ├── core/             # Core functionality
│   │   ├── flow.py      # Data flow management
│   │   └── stats.py     # Statistical analysis
│   ├── analysis/         # Analysis modules
│   │   ├── descriptive.py # Descriptive statistics
│   │   └── inferential.py # Inferential statistics
│   └── utils/            # Utility functions
│       ├── visualization.py # Plotting utilities
│       └── preprocessing.py # Data preprocessing
├── tests/                # Test suite
├── docs/                 # Documentation
└── examples/             # Usage examples

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Development Setup

  1. Clone the repository:

    git clone https://github.com/yourusername/statflow.git
    cd statflow
    
  2. Create a virtual environment:

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. Install development dependencies:

    pip install -e ".[dev]"
    

Testing

Run the test suite:

pytest

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Thanks to all contributors who have helped improve this library
  • Inspired by various statistical analysis tools and data flow frameworks

Contact

For questions or suggestions, please open an issue on GitHub or contact the maintainers.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

statflow-3.4.6.tar.gz (32.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

statflow-3.4.6-py3-none-any.whl (38.3 kB view details)

Uploaded Python 3

File details

Details for the file statflow-3.4.6.tar.gz.

File metadata

  • Download URL: statflow-3.4.6.tar.gz
  • Upload date:
  • Size: 32.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for statflow-3.4.6.tar.gz
Algorithm Hash digest
SHA256 b8f14fcd030eee24e1ee66fe19997ad4802caf7752045caea7759bc4e6f1b222
MD5 03373ff517432377ac8215c824dcdc27
BLAKE2b-256 7739b411deea7540f07a1308a8301cb98c0727635a2d42f639cd59ecbe4c9200

See more details on using hashes here.

File details

Details for the file statflow-3.4.6-py3-none-any.whl.

File metadata

  • Download URL: statflow-3.4.6-py3-none-any.whl
  • Upload date:
  • Size: 38.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for statflow-3.4.6-py3-none-any.whl
Algorithm Hash digest
SHA256 3455344e20a6896c16f21b327fe32c53cc959cee1de78c653b31ad8995a3947f
MD5 3c6f31940992eaa94d6be6c84389aff3
BLAKE2b-256 350658c601d14c70e836d0c1f4a212439d527b67c8428a81974b4511e8cdea94

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page