pystatsv1 / pystatsv1/PyStatsV1

Ch15: Add item–total tables and alpha variants to reliability analysis

Open
#70 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

Extend the Chapter 15 reliability analysis (scripts/ch15_reliability_analysis.py)
with richer psychometrics output:

  1. An item–total correlation table for the survey items.
  2. One or two alpha variants (e.g., standardized alpha, alpha if item dropped).

Goals

  • Use pingouin or pandas to compute item–total correlations for each item.
  • Save an item–total table to outputs/ch15/ch15_item_total.csv, including:
    • item name (e.g., q1, q2, …),
    • item–total correlation,
    • (optionally) “alpha if item dropped”.
  • Report at least one alpha variant in the JSON summary
    (ch15_reliability_summary.json), e.g.:
    • alpha_standardized
    • alpha_if_item_dropped (as a dict keyed by item)
  • Keep existing outputs (Cronbach’s alpha, ICC, Bland–Altman plot) unchanged.

Hints

  • pingouin has helpers like cronbach_alpha; its documentation also
    discusses item-level diagnostics.
  • An item–total correlation is typically the correlation of each item with
    the sum of the remaining items.
  • Follow the existing JSON structure so downstream code and docs remain simple.

Difficulty

Low/medium: good first issue for someone comfortable with pandas and basic stats.

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 with scripts/ch15_reliability_analysis.py and inspect how the current JSON summary and Chapter 15 outputs are produced. Run the existing analysis to establish the current Cronbach’s alpha, ICC, and Bland–Altman outputs, then add the requested item–total CSV and at least one alpha variant while preserving those outputs. Done means the new CSV and ch15_reliability_summary.json contain the requested diagnostics.

Written by the indexing model from the issue text.

Assessment

Tech stack
pandas, python
Domain
analytics, data
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.