Problem
ResultsTable stores scores, configs, and annotations as numpy arrays. Users who want to analyze results in pandas or export to CSV must manually reconstruct a DataFrame from .scores, .configs, .observable_names, etc.
Proposed
Add ResultsTable.to_dataframe() -> pd.DataFrame that returns a tidy DataFrame with columns for:
- All factor values (from
.configs + .factor_names)
- All observable scores (from
.scores + .observable_names)
- All annotations (from
.annotations + .annotation_names, if present)
pandas is an optional dependency — use a deferred import and raise ImportError with a helpful message if not installed.
Notes
Could also add .to_csv(path) as a convenience wrapper. Consider adding pandas as an optional extra in pyproject.toml.
Problem
ResultsTablestores scores, configs, and annotations as numpy arrays. Users who want to analyze results in pandas or export to CSV must manually reconstruct a DataFrame from.scores,.configs,.observable_names, etc.Proposed
Add
ResultsTable.to_dataframe() -> pd.DataFramethat returns a tidy DataFrame with columns for:.configs+.factor_names).scores+.observable_names).annotations+.annotation_names, if present)pandas is an optional dependency — use a deferred import and raise
ImportErrorwith a helpful message if not installed.Notes
Could also add
.to_csv(path)as a convenience wrapper. Consider addingpandasas an optional extra inpyproject.toml.