Data and fitting#
The core workflow starts with validated dose-response observations and passes them to a registered model through the fitting interface.
DoseResponseData#
- class bindcurve.DoseResponseData[source]#
Bases:
objectValidated long-form dose-response observations.
- classmethod from_dataframe(df, *, format='long', compound_col='compound_id', concentration_col='concentration', response_col='response', experiment_col='experiment_id', replicate_col='replicate_id', sigma_col='sigma', weight_col='weight', replicate_cols=None, replicate_prefix='response_', metadata=None)[source]#
Create a validated data object from a long- or wide-form DataFrame.
- Parameters:
- Return type:
- classmethod from_csv(path, *, format='long', compound_col='compound_id', concentration_col='concentration', response_col='response', experiment_col='experiment_id', replicate_col='replicate_id', sigma_col='sigma', weight_col='weight', replicate_cols=None, replicate_prefix='response_', metadata=None, **read_csv_kwargs)[source]#
Create data from a CSV file.
Supported formats are
"long"and"wide".- Parameters:
- Return type:
- classmethod from_json(source, *, format=None, compound_col='compound_id', concentration_col='concentration', response_col='response', experiment_col='experiment_id', replicate_col='replicate_id', sigma_col='sigma', weight_col='weight', replicate_cols=None, replicate_prefix='response_', metadata=None)[source]#
Create data from a JSON string or JSON file.
- Parameters:
- Return type:
- to_dataframe(*, format='long', compound_col='compound_id', concentration_col='concentration', response_col='response', experiment_col='experiment_id', replicate_col='replicate_id', replicate_prefix='response_')[source]#
Serialize the data object to a long- or wide-form DataFrame.
- to_csv(path=None, *, format='long', compound_col='compound_id', concentration_col='concentration', response_col='response', experiment_col='experiment_id', replicate_col='replicate_id', replicate_prefix='response_', index=False, **to_csv_kwargs)[source]#
Serialize the data object to CSV.
- to_json(path=None, *, format='long', compound_col='compound_id', concentration_col='concentration', response_col='response', experiment_col='experiment_id', replicate_col='replicate_id', replicate_prefix='response_', **json_kwargs)[source]#
Serialize the data object to JSON.
- classmethod concatenate(*datasets)[source]#
Return a new dataset created by concatenating multiple datasets.
- Parameters:
datasets (DoseResponseData)
- Return type:
- quality_report(*, compounds=None, thresholds=None)[source]#
Return compound-level quality-control metrics for the dataset.
- Parameters:
thresholds (DataQualityThresholds | None)
- Return type:
- quality_dashboard(*, compounds=None, thresholds=None, figsize=None)[source]#
Return a graphical dashboard summarizing data-level QC.
- Parameters:
- Return type:
- resolve_compounds(selectors=None)[source]#
Resolve, validate, and stably deduplicate compound selectors.
FitSettings#
fit#
- bindcurve.fit(data, *, model='ic50', settings=None, compounds=None, fixed=None, bounds=None)[source]#
Convenience function for fitting a registered model to dose-response data.
- Parameters:
data (DoseResponseData)
model (str | BaseDoseResponseModel)
settings (FitSettings | None)
bounds (Mapping[str, tuple[float | None, float | None]] | None)
- Return type: