LawSynthGitHub

pandas conversion

The Python SDK does not import pandas. Convert a DataFrame deliberately, so a pandas dtype change cannot alter model input unnoticed.

from lawsynth import Dataset

frame = frame.sort_values("time")
selected = frame[["time", "x", "y"]]
if selected.isna().any().any():
    raise ValueError("resolve missing observations before discovery")
dataset = Dataset.from_columns(
    selected["time"].tolist(),
    {name: selected[name].tolist() for name in ("x", "y")},
)

Validate units, timestamp conversion, duplicate times, and finite values before calling Dataset.from_columns. The SDK repeats structural validation, but it cannot know whether a timezone, resampling method, or interpolation policy is scientifically appropriate. Store those choices with the discovery run.