Skip to main content

tkstatistics

tkstatistics is a small-data statistics desktop application and headless runner built with the Python standard library. Its defining workflow is pre-registration: a confirmatory analysis must match a committed hypothesis plan before the application reveals its p-value.

The project is alpha software intended for teaching and reproducible analysis on modest datasets. It is not a replacement for NumPy, SciPy, pandas, R, or a validated clinical statistics system.

Features

  • Tkinter desktop application with CSV import and SQLite project files.
  • Reproducible JSON analysis specifications and persisted run artifacts.
  • Committed analysis plans, confirmatory-result gating, and dataset audit reports.
  • Descriptives, frequency tables, t-tests, nonparametric tests, Fisher's exact test, ANOVA, correlations, and linear regression.
  • Histogram, box plot, scatter plot, and normal Q-Q plot rendering with SVG export.
  • No third-party runtime dependencies. Numerical routines are cross-checked against established scientific Python libraries in the test suite.

Installation

Python 3.11 or newer is required.

python -m pip install tkstatistics

Tkinter is included with standard Python installers on Windows and macOS. Some Linux distributions package it separately, for example as python3-tk.

Desktop usage

Launch the application with either command:

tkstatistics
python -m tkstatistics

Create or open a .statproj project, import a CSV dataset, then use the Analyze and Graphs menus. Confirmatory analyses follow a two-step flow: first choose Pre-register Hypothesis..., then Run Confirmatory Test....

Headless usage

Run a JSON specification against an existing project:

tkstatistics --run analysis.json --project study.statproj --format text

Machine-readable output is the default and can also be saved to a file:

tkstatistics --run analysis.json --project study.statproj \
  --format json --output run-artifact.json

Pre-registration and auditing are available without the GUI:

tkstatistics --commit-plan plan.json --project study.statproj
tkstatistics --audit dataset_name --project study.statproj

See tkstatistics --help and the examples/mean_hypothesis_demo walkthrough.

Development

uv sync --all-extras --all-groups
make check-ci
make publish-check

The package is MIT licensed. See the release history.

Metadata

Release files for tkstatistics 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tkstatistics 0.0.1
File Size Uploaded
tkstatistics-0.0.1.tar.gz 53.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for tkstatistics 0.0.1
File Interpreter ABI Platform
tkstatistics-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 120.9 kB

Release files / tkstatistics-0.0.1.tar.gz

Download URL tkstatistics-0.0.1.tar.gz
Size 53.9 kB
Tags Source
SHA-256 checksum
How to use checksums
d73a3557788f69f5d90c94575da1e55822b0e3922995ec1e0e4ac57284951714
BLAKE2b-256 checksum
How to use checksums
c87d29aa6ee11e667cb6cb9108bf7d38de62c9316309cc822390d5a1b86d6db0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2026.

Transparency log

Release files / tkstatistics-0.0.1-py3-none-any.whl

Download URL tkstatistics-0.0.1-py3-none-any.whl
Size 67.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2b905e8d7c48b7cf58815a1fe1781081721f0fd763a1b8308b8ff4f5bc70d8e4
BLAKE2b-256 checksum
How to use checksums
b262893c61a42f495cc7758da9d79365db9a237da528514417ef95efc4f37c2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page