pg-data-screeninglisted
Install: claude install-skill Exekiel179/pingouin-psych-stats
# PG Data Screening
Use before analysis when data has not been inspected in the current thread, or when a test fails because of missing values, shape, categories, or assumptions.
## Load
Read:
- `../../references/supervision-gates.md`
- `../../references/pingouin-api-quickref.md`
- `../../references/pingouin-optimization.md`
- `../../references/archive-contract.md` when running inside an archive.
## Workflow
1. Inspect data columns, dtypes, sample size, missingness, duplicates, and group sizes.
2. Confirm long versus wide format for the target analysis.
3. Confirm repeated-measures identifiers are unique enough for the design.
4. Run only relevant assumption checks.
5. Produce a short analysis-readiness summary and minimal corrective code.
## Standard Code Skeleton
```python
import pandas as pd
import pingouin as pg
df = pd.read_csv("data.csv")
print(df.info())
print(df.describe(include="all"))
print(df.isna().mean().sort_values(ascending=False).head(20))
print(df.duplicated().sum())
```
For group balance:
```python
print(df.groupby("group", dropna=False).size())
```
For normality by group:
```python
pg.normality(data=df, dv="score", group="group")
```
For homogeneity:
```python
pg.homoscedasticity(data=df, dv="score", group="group")
```
For repeated-measures sphericity:
```python
pg.sphericity(data=df, dv="score", within="condition", subject="id")
```
For robust outliers (MAD-median rule) and a normality Q-Q plot:
```python
mask = pg.madmedianrule(df["scor