def test_stack_time_periods_by_ddmm_unique_dates(): test_data_invalid = pd.DataFrame(create_test_data()) test_data_invalid['end_date'] = pd.to_datetime( test_data_invalid['end_date']) test_data_invalid['date'] = pd.to_datetime(test_data_invalid['end_date']) test_data_invalid['period'] = [ '2019-01-01 to 2019-12-31', '2005-01-01 to 2005-12-31', '2000-01-01 to 2000-12-31', '2005-01-01 to 2005-12-31' ] test_data_invalid['mm-dd'] = test_data_invalid['date'].dt.strftime("%m-%d") test_data = test_data_invalid.drop(test_data_invalid.index[-1]) expected = pd.DataFrame({'mm-dd': ['03-01', '07-31', '08-28'], '2000-01-01 to 2000-12-31': [2.39664378851418, 2.39664378851418, 2.39664378851418], '2005-01-01 to 2005-12-31': [1.17640700229636, 1.17640700229636, 1.17640700229636], '2019-01-01 to 2019-12-31': [0.13002748115958, 0.13002748115958, 0.13002748115958]}). \ set_index('mm-dd') expected.columns.name = 'period' assert_frame_equal( get_transform_data.stack_time_periods_by_ddmm(test_data), expected)
def ay_dtw(timeseries): pivot_time_series = get_transform_data.stack_time_periods_by_ddmm(timeseries) return distance_matrix.dtw_dist_matrix(pivot_time_series)
def ay_euclidean(timeseries): transposed_pivot_time_series = get_transform_data.stack_time_periods_by_ddmm( timeseries).transpose() return distance_matrix.euclidean_dist_matrix(transposed_pivot_time_series)
def test_stack_time_periods_by_ddmm_nonunique_dates(): test_data_invalid = pd.DataFrame(create_test_data()) test_data_invalid.loc[:, 'end_date'] = pd.to_datetime(test_data_invalid['end_date']) with pytest.raises(KeyError): get_transform_data.stack_time_periods_by_ddmm(test_data_invalid)