Skip to content

add_metrics

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