def test_medians_series_and_group_keys_simple(self):
df = pd.DataFrame({
'date':
list(pd.date_range(pd.datetime(2015, 6, 15), pd.datetime(2015, 6, 20))) +
list(pd.date_range(pd.datetime(2015, 6, 15), pd.datetime(2015, 6, 20))),
'series_key': ['a'] * 6 + ['b'] * 6,
'group_key': ['uneven', 'even'] * 6,
'value': range(12)
})
guac = GuacMl(df, 'value')
guac.make_time_series('date', prediction_length=1, series_key_cols='series_key')
medians = HistoricalMedians([2], guac.config, guac.logger, group_keys='group_key')
out = medians.execute(guac.data)
out.df = out.df.sort_values(['series_key', 'group_key', 'date'])
self.assertTrue(np.isnan(out.df['value_median_2_by_group_key'].iloc[0]))
self.assertEqual(out.df['value_median_2_by_group_key'].iloc[1], 1)
self.assertEqual(out.df['value_median_2_by_group_key'].iloc[2], 2)
self.assertTrue(np.isnan(out.df['value_median_2_by_group_key'].iloc[3]))
self.assertEqual(out.df['value_median_2_by_group_key'].iloc[4], 0)
self.assertEqual(out.df['value_median_2_by_group_key'].iloc[5], 1)
self.assertTrue(np.isnan(out.df['value_median_2_by_group_key'].iloc[6]))
评论列表
文章目录