def test_diff(self): # overwrite column post_df = proc.diff(df=timeseries_df, columns={"y": "y"}) self.assertListEqual(post_df.columns.tolist(), ["label", "y"]) self.assertListEqual(series_to_list(post_df["y"]), [None, 1.0, 1.0, 1.0]) # add column post_df = proc.diff(df=timeseries_df, columns={"y": "y1"}) self.assertListEqual(post_df.columns.tolist(), ["label", "y", "y1"]) self.assertListEqual(series_to_list(post_df["y"]), [1.0, 2.0, 3.0, 4.0]) self.assertListEqual(series_to_list(post_df["y1"]), [None, 1.0, 1.0, 1.0]) # look ahead post_df = proc.diff(df=timeseries_df, columns={"y": "y1"}, periods=-1) self.assertListEqual(series_to_list(post_df["y1"]), [-1.0, -1.0, -1.0, None]) # invalid column reference self.assertRaises( QueryObjectValidationError, proc.diff, df=timeseries_df, columns={"abc": "abc"}, )
def test_diff(): # overwrite column post_df = diff(df=timeseries_df, columns={"y": "y"}) assert post_df.columns.tolist() == ["label", "y"] assert series_to_list(post_df["y"]) == [None, 1.0, 1.0, 1.0] # add column post_df = diff(df=timeseries_df, columns={"y": "y1"}) assert post_df.columns.tolist() == ["label", "y", "y1"] assert series_to_list(post_df["y"]) == [1.0, 2.0, 3.0, 4.0] assert series_to_list(post_df["y1"]) == [None, 1.0, 1.0, 1.0] # look ahead post_df = diff(df=timeseries_df, columns={"y": "y1"}, periods=-1) assert series_to_list(post_df["y1"]) == [-1.0, -1.0, -1.0, None] # invalid column reference with pytest.raises(QueryObjectValidationError): diff( df=timeseries_df, columns={"abc": "abc"}, ) # diff by columns post_df = diff(df=timeseries_df2, columns={"y": "y", "z": "z"}, axis=1) assert post_df.columns.tolist() == ["label", "y", "z"] assert series_to_list(post_df["z"]) == [0.0, 2.0, 8.0, 6.0]