DIP calculations and statistics (thunor.dip)
The DIP module converts time-series assay measurements into drug-induced
proliferation rates. In the common workflow, thunor.dip.dip_rates()
returns a pair of tables containing control DIP rates and experiment DIP rates.
Those tables can then be passed directly to thunor.curve_fit.fit_params().
For experiment wells, the default implementation evaluates multiple candidate regression windows and chooses the best suffix of the time series. The current code uses a vectorised implementation for the default selector to avoid the cost of repeated per-well, per-window regressions.
- thunor.dip.adjusted_r_squared(r, n, p)
Calculate adjusted r-squared value from r value
- Parameters:
r (float) – r value (between 0 and 1)
n (int) – number of sample data points
p (int) – number of free parameters used in fit
- Returns:
Adjusted r-squared value
- Return type:
float
- thunor.dip.ctrl_dip_rates(df_controls)
Calculate control DIP rates
- Parameters:
df_controls (pd.DataFrame) – Pandas DataFrame of control cell counts from a
thunor.io.HtsPandasobject- Returns:
Fitted control DIP rate values
- Return type:
pd.DataFrame
- thunor.dip.dip_rates(df_data, selector_fn=<function tyson1>)
Calculate DIP rates on a dataset
- Parameters:
df_data (thunor.io.HtsPandas) – Thunor HTS dataset
selector_fn (function) – Selection function for choosing optimal DIP rate fit (default:
tyson1()
- Returns:
Two-entry tuple of (ctrl_dip_rates, expt_dip_rates). Either entry may be None if no control or experiment wells are present. Non-None entries are Pandas DataFrames.
- Return type:
tuple
- thunor.dip.expt_dip_rates(df_doses, df_vals, selector_fn=<function tyson1>)
Calculate experiment (non-control) DIP rates
- Parameters:
df_doses (pd.DataFrame) – Pandas DataFrame of dose values from a
thunor.io.HtsPandasobjectdf_vals (pd.DataFrame) – Pandas DataFrame of cell counts from a
thunor.io.HtsPandasobjectselector_fn (function) – Selection function for choosing optimal DIP rate fit (default:
tyson1()
- Returns:
Fitted DIP rate values
- Return type:
pd.DataFrame
- thunor.dip.tyson1(adj_r_sq, rmse, n)
Tyson1 algorithm for selecting optimal DIP rate fit
- Parameters:
adj_r_sq (float) – Adjusted r-squared value
rmse (float) – Root mean squared error of fit
n (int) – Number of data points used in fit
- Returns:
Fit value (higher is better)
- Return type:
float