def test_apply(): df = pd.DataFrame(index=pd.date_range(start='2000-01-01', end='2000-12-31', freq='D'), data={ 'ds0': np.repeat(0, 366), 'ds1': np.repeat(1, 366) }) bias_matrix_old = df_metrics.pairwise_apply(df, bias) bias_matrix_new = df_metrics.nwise_apply(df, bias, n=2, as_df=True) assert bias_matrix_old.equals(bias_matrix_new) # check if dict implementation and matrix implementation have same result bias_new = df_metrics.nwise_apply(df, bias, n=2, as_df=False) for i, v in bias_new.items(): assert bias_matrix_new.loc[i] == v
def test_apply(): df = pd.DataFrame(index=pd.date_range(start='2000-01-01', end='2000-12-31', freq='D'), data={ 'ds0': np.repeat(0, 366), 'ds1': np.repeat(1, 366) }) df.loc[df.index[np.random.choice(range(366), 10)], 'ds0'] = np.nan df.loc[df.index[np.random.choice(range(366), 10)], 'ds1'] = np.nan with pytest.deprecated_call(): bias_matrix_old = df_metrics.pairwise_apply(df, bias) bias_matrix_new = df_metrics.nwise_apply(df, bias, n=2, as_df=True) r_matrix_new = df_metrics.nwise_apply(df, stats.pearsonr, n=2, as_df=True) assert bias_matrix_old.equals(bias_matrix_new) # check if dict implementation and matrix implementation have same result bias_new = df_metrics.nwise_apply(df, bias, n=2, as_df=False) for i, v in bias_new.items(): assert bias_matrix_new.loc[i] == v
def df_var_ratio(df): return df_metrics._to_namedtuple(df_metrics.pairwise_apply(df, var_ratio), 'var_ratio')
def df_std_ratio(df): return df_metrics._to_namedtuple(df_metrics.pairwise_apply(df, std_ratio), 'std_ratio')