seminrExtras (Python)
Python port of the seminrExtras R package: supplementary tools for evaluating and validating PLS-SEM (partial least squares structural equation) models, built on the seminr estimation engine.
Every feature is validated for numerical parity against the R package on R-generated golden fixtures (1e-5 default tolerance; injected R random streams for resampling-based features).
Installation
pip install seminrExtras # core
pip install "seminrExtras[plot]" # + matplotlib for the plot layer
pip install "seminrExtras[pandas]" # + pandas-friendly input
Requires Python >= 3.11 and seminr >= 0.2.1 (installed automatically).
Features
Mirroring the R package, evaluated over an already-estimated seminr model:
| Feature | Functions |
|---|---|
| Cross-Validated Predictive Ability Test (CVPAT) | assess_cvpat, assess_cvpat_compare |
| Predictive Contribution of the Mediator (PCM) | assess_pcm |
| (Combined) Importance-Performance Map Analysis | assess_ipma, assess_cipma |
| Composite Overfit Analysis (COA) | assess_coa, predictive_deviance, deviance_tree, unstable_params, group_rules, competes |
| Necessary Condition Analysis (NCA) | assess_nca, assess_nca_esse |
| Confirmatory Tetrad Analysis (CTA-PLS) | assess_cta |
| FIMIX-PLS (latent-class segmentation) | assess_fimix, assess_fimix_compare |
| PLS-POS (prediction-oriented segmentation) | assess_pos, assess_pos_compare, pos_segments |
| Congruence testing | congruence_test |
Usage
Specify and estimate a model with seminr, then evaluate it with
seminrExtras:
from seminrExtras import assess_cvpat
result = assess_cvpat(model, nboot=200, seed=123)
print(result) # readable table (R print parity)
result.summarize() # detailed summary
# Plots (requires the `plot` extra):
from seminrExtras.plotting import plot
fig = plot(result)
Result objects are frozen dataclasses with a readable __str__, a
summarize() method, and — via seminrExtras.plotting — matplotlib plots that
mirror the R package's plot methods.
Development
uv sync # install (dev group included)
uv run pytest # tests
uv run ruff check . # lint
uv run ruff format . # format
uv run mypy src # type-check (strict)
License
GPL-3.0-only, like the R package it ports.
Metadata
Release files for seminrExtras 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| seminrextras-0.1.0.tar.gz | 1.9 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| seminrextras-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.0 MB
Release files / seminrextras-0.1.0.tar.gz
| Download URL | seminrextras-0.1.0.tar.gz |
|---|---|
| Size | 1.9 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fe4e9929802cb7273189de8541925964b353768d17a9a759bdb9f6056aa9738d
|
|
BLAKE2b-256 checksum How to use checksums |
6642636cf33868fe2935f05d74a22decf93d6c7a665d0ddc676e39ab0533e728
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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 12, 2026.
Transparency logRelease files / seminrextras-0.1.0-py3-none-any.whl
| Download URL | seminrextras-0.1.0-py3-none-any.whl |
|---|---|
| Size | 90.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2498f7e130c3831d9fc67406ea3ae9ddd382cad3ad6ae5cfb35e83b4d90af25c
|
|
BLAKE2b-256 checksum How to use checksums |
6f10e378018c7281d350acd75412946f87e880d3e80a394a170d24c7538e42dc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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 12, 2026.
Transparency log