pystatsv1 / pystatsv1/PyStatsV1

Ch14: Add --explain mode to tutoring A/B analyzer

Open
#69 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

good first issue help wanted
Dominant language
Python
Stars
1
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Summary

No response

Details

Summary

Add an --explain mode to the Chapter 14 tutoring A/B case study analyzer
(scripts/ch14_tutoring_ab.py).

When --explain is set, the script should print human-readable explanations
alongside the numerical results (effect size, confidence interval, p-value).

Goals

  • Add a --explain flag to the CLI (using the shared base_parser).
  • When --explain is true:
    • Print brief, plain-language commentary on:
      • the estimated mean difference,
      • the 95% confidence interval,
      • the p-value and what it implies.
  • Keep the default non-explain mode output unchanged (so existing workflows don’t break).
  • Add at least one small test or example to show the new flag in action.

Hints

  • Look at how scripts/ch14_tutoring_ab.py currently uses the CLI helper.
  • Mirror the style of printouts used in Chapter 13/14 (short, clear, instructor-friendly).
  • It’s fine to start with very minimal natural-language text; we can refine wording in review.

Difficulty

Beginner-friendly: good first issue for someone comfortable with basic Python
and the command line.

Files to Touch

No response

Contributor Checklist
  • I have read CONTRIBUTING.md.
  • I can run make lint locally.
  • I can run make test locally.
  • I have checked for existing issues/PRs that might overlap.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading scripts/ch14_tutoring_ab.py and how it uses the shared base_parser, then compare the printout style in the Chapter 13/14 examples. Add the --explain behavior while preserving the default output, and include a small test or example demonstrating the flag; run make test and make lint before checking the numerical explanations.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, data
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.