Ejemplo n.º 1
0
 def test_extraction_for_one_time_series_runs_through(self):
     mfs = MinimalFeatureExtractionSettings()
     data = pd.DataFrame([[0, 0, 0, 0], [1, 0, 0, 0]], columns=["id", "time", "kind", "value"])
     extracted_features = _extract_features_for_one_time_series([0, data], settings=mfs,
                                                                column_value="value", column_id="id")
     six.assertCountEqual(self, extracted_features.columns,
                          ["0__median", "0__standard_deviation", "0__sum_values", "0__maximum", "0__variance",
                           "0__minimum", "0__mean", "0__length"])
     six.assertCountEqual(self, extracted_features.index, [0, 1])
Ejemplo n.º 2
0
    def test_extract_features_for_one_time_series(self):
        # todo: implement more methods and test more aspects
        df = self.create_test_data_sample()
        settings = ComprehensiveFCParameters()

        extracted_features = _extract_features_for_one_time_series(
            ["b", df.loc[df.kind == "b", ["val", "id"]]],
            default_fc_parameters=settings,
            column_value="val",
            column_id="id")

        self.assertIsInstance(extracted_features, pd.DataFrame)
        self.assertTrue(
            np.all(extracted_features.b__sum_values == np.array([757, 695])))
        self.assertTrue(
            np.all(extracted_features.b__minimum == np.array([3, 1])))
        self.assertTrue(
            np.all(
                extracted_features.b__abs_energy == np.array([36619, 35483])))
        self.assertTrue(
            np.all(extracted_features.b__mean == np.array([37.85, 34.75])))
        self.assertTrue(
            np.all(extracted_features.b__median == np.array([39.5, 28.0])))

        df_sts = self.create_one_valued_time_series()
        extracted_features_sts = _extract_features_for_one_time_series(
            ["a", df_sts[["val", "id"]]],
            default_fc_parameters=settings,
            column_value="val",
            column_id="id")

        self.assertIsInstance(extracted_features_sts, pd.DataFrame)
        self.assertTrue(
            np.all(extracted_features_sts.a__maximum == np.array([1.0, 6.0])))
        self.assertTrue(
            np.all(
                extracted_features_sts.a__sum_values == np.array([1.0, 11.0])))
        self.assertTrue(
            np.all(extracted_features_sts.a__count_above_mean == np.array(
                [0, 1])))