Add Calling Cards metrics to the given DataFrame.
:param dataframe: a pandas DataFrame of promoter regions.
:type dataframe: DataFrame
:param pseudocount: pseudocount to use when calculating Calling Cards
metrics.
:type pseudocount: float
:return: a pandas DataFrame of promoter regions with Calling Cards
metrics.
:rtype: DataFrame
Source code in callingcardstools/PeakCalling/yeast/call_peaks.py
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322 | def add_metrics(dataframe: pd.DataFrame, pseudocount: float = 0.2) -> pd.DataFrame:
"""
Add Calling Cards metrics to the given DataFrame.
:param dataframe: a pandas DataFrame of promoter regions.
:type dataframe: DataFrame
:param pseudocount: pseudocount to use when calculating Calling Cards
metrics.
:type pseudocount: float
:return: a pandas DataFrame of promoter regions with Calling Cards
metrics.
:rtype: DataFrame
"""
dataframe["callingcards_enrichment"] = enrichment_vectorized(
dataframe["background_total_hops"],
dataframe["experiment_total_hops"],
dataframe["background_hops"],
dataframe["experiment_hops"],
pseudocount,
)
dataframe["poisson_pval"] = poisson_pval_vectorized(
dataframe["background_total_hops"],
dataframe["experiment_total_hops"],
dataframe["background_hops"],
dataframe["experiment_hops"],
pseudocount,
)
dataframe["hypergeometric_pval"] = hypergeom_pval_vectorized(
dataframe["background_total_hops"],
dataframe["experiment_total_hops"],
dataframe["background_hops"],
dataframe["experiment_hops"],
)
return dataframe
|