def point_estimate()

in spotify_confidence/analysis/frequentist/confidence_computers/z_test_linreg_computer.py [0:0]


def point_estimate(df: Series, **kwargs) -> float:
    df = estimate_slope(df, **kwargs)
    point_estimate = df[kwargs[NUMERATOR]] / df[kwargs[DENOMINATOR]]

    if REGRESSION_PARAM in df:
        feature_mean = df[kwargs[FEATURE]].sum() / df[kwargs[DENOMINATOR]].sum()

        def lin_reg_point_estimate_delta(row: Series, feature_mean: float, **kwargs: Dict) -> Series:
            return dfmatmul(
                row[REGRESSION_PARAM], row[kwargs[FEATURE]] - feature_mean * row[kwargs[DENOMINATOR]], outer=False
            )

        return (
            point_estimate
            - df.apply(lin_reg_point_estimate_delta, feature_mean=feature_mean, axis=1, **kwargs)
            / df[kwargs[DENOMINATOR]]
        )

    return point_estimate