Ejemplo n.º 1
0
def test_as_freq_daily(il_electricity_cdd_hdd_billing_monthly):
    meter_data = il_electricity_cdd_hdd_billing_monthly["meter_data"]
    assert meter_data.shape == (27, 1)
    as_daily = as_freq(meter_data.value, freq="D")
    assert as_daily.shape == (792, )
    assert round(meter_data.value.sum(), 1) == round(as_daily.sum(),
                                                     1) == 21290.2
Ejemplo n.º 2
0
def test_as_freq_daily_temperature(il_electricity_cdd_hdd_billing_monthly):
    temperature_data = il_electricity_cdd_hdd_billing_monthly[
        "temperature_data"]
    assert temperature_data.shape == (19417, )
    as_daily = as_freq(temperature_data, freq="D", series_type="instantaneous")
    assert as_daily.shape == (811, )
    assert abs(temperature_data.mean() - as_daily.mean()) <= 0.1
Ejemplo n.º 3
0
def test_as_freq_month_start(il_electricity_cdd_hdd_billing_monthly):
    meter_data = il_electricity_cdd_hdd_billing_monthly["meter_data"]
    assert meter_data.shape == (27, 1)
    as_month_start = as_freq(meter_data.value, freq="MS")
    assert as_month_start.shape == (28, )
    assert round(meter_data.value.sum(), 1) == round(as_month_start.sum(),
                                                     1) == 21290.2
Ejemplo n.º 4
0
def test_as_freq_daily_to_daily(il_electricity_cdd_hdd_daily):
    meter_data = il_electricity_cdd_hdd_daily["meter_data"]
    assert meter_data.shape == (810, 1)
    as_daily = as_freq(meter_data.value, freq="D")
    assert as_daily.shape == (810, )
    assert round(meter_data.value.sum(), 1) == round(as_daily.sum(),
                                                     1) == 21925.8
Ejemplo n.º 5
0
def test_as_freq_daily_all_nones(il_electricity_cdd_hdd_billing_monthly):
    meter_data = il_electricity_cdd_hdd_billing_monthly["meter_data"]
    meter_data["value"] = np.nan
    assert meter_data.shape == (27, 1)
    as_daily = as_freq(meter_data.value, freq="D")
    assert as_daily.shape == (792, )
    assert round(meter_data.value.sum(), 1) == round(as_daily.sum(), 1) == 0
Ejemplo n.º 6
0
def test_as_freq_hourly_to_daily(il_electricity_cdd_hdd_hourly):
    meter_data = il_electricity_cdd_hdd_hourly["meter_data"]
    meter_data.iloc[-1]["value"] = np.nan
    assert meter_data.shape == (19417, 1)
    as_daily = as_freq(meter_data.value, freq="D")
    assert as_daily.shape == (811, )
    assert round(meter_data.value.sum(), 1) == round(as_daily.sum(),
                                                     1) == 21926.0
Ejemplo n.º 7
0
def test_as_freq_perserves_nulls(il_electricity_cdd_hdd_billing_monthly):
    meter_data = il_electricity_cdd_hdd_billing_monthly["meter_data"]
    monthly_with_nulls = meter_data[meter_data.index.year != 2016].reindex(
        meter_data.index)
    daily_with_nulls = as_freq(monthly_with_nulls.value, freq="D")
    assert (round(monthly_with_nulls.value.sum(), 2) == round(
        daily_with_nulls.sum(), 2) == 11094.05)
    assert monthly_with_nulls.value.isnull().sum() == 13
    assert daily_with_nulls.isnull().sum() == 365
Ejemplo n.º 8
0
def test_as_freq_daily_temperature_monthly(
        il_electricity_cdd_hdd_billing_monthly):
    temperature_data = il_electricity_cdd_hdd_billing_monthly[
        "temperature_data"]
    temperature_data = temperature_data.groupby(pd.Grouper(freq="MS")).mean()
    assert temperature_data.shape == (28, )
    as_daily = as_freq(temperature_data, freq="D", series_type="instantaneous")
    assert as_daily.shape == (824, )
    assert round(as_daily.mean(), 1) == 54.5
Ejemplo n.º 9
0
def test_as_freq_month_start_temperature(
        il_electricity_cdd_hdd_billing_monthly):
    temperature_data = il_electricity_cdd_hdd_billing_monthly[
        "temperature_data"]
    assert temperature_data.shape == (19417, )
    as_month_start = as_freq(temperature_data,
                             freq="MS",
                             series_type="instantaneous")
    assert as_month_start.shape == (29, )
    assert round(as_month_start.mean(), 1) == 53.4
Ejemplo n.º 10
0
def test_as_freq_hourly_temperature(il_electricity_cdd_hdd_billing_monthly):
    temperature_data = il_electricity_cdd_hdd_billing_monthly[
        "temperature_data"]
    assert temperature_data.shape == (19417, )
    as_hourly = as_freq(temperature_data,
                        freq="H",
                        series_type="instantaneous")
    assert as_hourly.shape == (19417, )
    assert round(temperature_data.mean(), 1) == round(as_hourly.mean(),
                                                      1) == 54.6
Ejemplo n.º 11
0
def test_as_freq_not_series(il_electricity_cdd_hdd_billing_monthly):
    meter_data = il_electricity_cdd_hdd_billing_monthly["meter_data"]
    assert meter_data.shape == (27, 1)
    with pytest.raises(ValueError):
        as_freq(meter_data, freq="H")
Ejemplo n.º 12
0
def test_as_freq_empty():
    meter_data = pd.DataFrame({"value": []})
    empty_meter_data = as_freq(meter_data.value, freq="H")
    assert empty_meter_data.empty