diff --git a/fedot/api/api_utils/input_analyser.py b/fedot/api/api_utils/input_analyser.py index 3b9c5f2c23..d626835741 100644 --- a/fedot/api/api_utils/input_analyser.py +++ b/fedot/api/api_utils/input_analyser.py @@ -1,18 +1,16 @@ from functools import partial from inspect import signature -from typing import Dict, Tuple, Any, Union +from typing import Any, Dict, Tuple, Union import numpy as np from golem.core.log import default_log -from fedot.core.composer.meta_rules import get_cv_folds_number, get_recommended_preset, \ - get_early_stopping_generations +from fedot.core.composer.meta_rules import get_cv_folds_number, get_early_stopping_generations, get_recommended_preset from fedot.core.data.data import InputData from fedot.core.data.data_preprocessing import find_categorical_columns from fedot.core.data.multi_modal import MultiModalData from fedot.core.repository.dataset_types import DataTypesEnum - meta_rules = [get_cv_folds_number, get_recommended_preset, get_early_stopping_generations] diff --git a/fedot/core/data/data.py b/fedot/core/data/data.py index bf06dbf87b..63eac97fd0 100644 --- a/fedot/core/data/data.py +++ b/fedot/core/data/data.py @@ -2,14 +2,12 @@ import glob import os - from copy import copy, deepcopy from dataclasses import dataclass, field from typing import Any, Iterable, List, Optional, Tuple, Union import numpy as np import pandas as pd - from golem.core.log import default_log from golem.utilities.requirements_notificator import warn_requirement diff --git a/fedot/core/data/data_preprocessing.py b/fedot/core/data/data_preprocessing.py index c32adf36ff..dccbe12803 100644 --- a/fedot/core/data/data_preprocessing.py +++ b/fedot/core/data/data_preprocessing.py @@ -1,9 +1,9 @@ -from typing import Tuple, Optional +from typing import Optional, Tuple import numpy as np import pandas as pd -from fedot.core.data.data import InputData, data_type_is_table, data_type_is_ts, data_type_is_multi_ts +from fedot.core.data.data import InputData, data_type_is_multi_ts, data_type_is_table, data_type_is_ts from fedot.core.repository.dataset_types import DataTypesEnum from fedot.preprocessing.data_types import TYPE_TO_ID diff --git a/fedot/core/data/merge/supplementary_data_merger.py b/fedot/core/data/merge/supplementary_data_merger.py index 6a4c747e4a..6b5c414c46 100644 --- a/fedot/core/data/merge/supplementary_data_merger.py +++ b/fedot/core/data/merge/supplementary_data_merger.py @@ -1,4 +1,4 @@ -from typing import List, Dict +from typing import Dict, List import numpy as np from golem.core.log import default_log diff --git a/fedot/core/data/supplementary_data.py b/fedot/core/data/supplementary_data.py index 8a053be9a9..08c5509a6f 100644 --- a/fedot/core/data/supplementary_data.py +++ b/fedot/core/data/supplementary_data.py @@ -1,5 +1,5 @@ from dataclasses import dataclass -from typing import Optional, Dict +from typing import Dict, Optional import numpy as np diff --git a/fedot/core/operations/evaluation/operation_implementations/data_operations/categorical_encoders.py b/fedot/core/operations/evaluation/operation_implementations/data_operations/categorical_encoders.py index 5d2993417b..0888843268 100644 --- a/fedot/core/operations/evaluation/operation_implementations/data_operations/categorical_encoders.py +++ b/fedot/core/operations/evaluation/operation_implementations/data_operations/categorical_encoders.py @@ -2,7 +2,6 @@ from typing import List, Optional import numpy as np - from sklearn.preprocessing import LabelEncoder, OneHotEncoder from fedot.core.data.data import InputData, OutputData diff --git a/fedot/core/operations/evaluation/operation_implementations/data_operations/sklearn_selectors.py b/fedot/core/operations/evaluation/operation_implementations/data_operations/sklearn_selectors.py index 8444b4eaf0..fa880ae7fd 100644 --- a/fedot/core/operations/evaluation/operation_implementations/data_operations/sklearn_selectors.py +++ b/fedot/core/operations/evaluation/operation_implementations/data_operations/sklearn_selectors.py @@ -5,7 +5,7 @@ from sklearn.linear_model import LinearRegression, LogisticRegression from sklearn.tree import DecisionTreeClassifier, DecisionTreeRegressor -from fedot.core.data.data import OutputData, InputData +from fedot.core.data.data import InputData, OutputData from fedot.core.operations.evaluation.operation_implementations.implementation_interfaces import \ DataOperationImplementation from fedot.core.operations.operation_parameters import OperationParameters diff --git a/fedot/core/operations/evaluation/operation_implementations/data_operations/sklearn_transformations.py b/fedot/core/operations/evaluation/operation_implementations/data_operations/sklearn_transformations.py index df87b7b1b5..4037cbc89e 100644 --- a/fedot/core/operations/evaluation/operation_implementations/data_operations/sklearn_transformations.py +++ b/fedot/core/operations/evaluation/operation_implementations/data_operations/sklearn_transformations.py @@ -3,13 +3,13 @@ import numpy as np import pandas as pd -from sklearn.decomposition import KernelPCA, PCA, FastICA +from sklearn.decomposition import FastICA, KernelPCA, PCA from sklearn.impute import SimpleImputer from sklearn.preprocessing import MinMaxScaler, PolynomialFeatures, StandardScaler -from fedot.core.data.data import InputData, data_type_is_table, OutputData -from fedot.core.data.data_preprocessing import replace_inf_with_nans, convert_into_column, \ - divide_data_categorical_numerical, find_categorical_columns, data_has_categorical_features +from fedot.core.data.data import InputData, OutputData, data_type_is_table +from fedot.core.data.data_preprocessing import convert_into_column, data_has_categorical_features, \ + divide_data_categorical_numerical, find_categorical_columns, replace_inf_with_nans from fedot.core.operations.evaluation.operation_implementations. \ implementation_interfaces import DataOperationImplementation, EncodedInvariantImplementation from fedot.core.operations.operation_parameters import OperationParameters diff --git a/fedot/core/operations/evaluation/operation_implementations/implementation_interfaces.py b/fedot/core/operations/evaluation/operation_implementations/implementation_interfaces.py index 6e4703a6a5..aeb3e44790 100644 --- a/fedot/core/operations/evaluation/operation_implementations/implementation_interfaces.py +++ b/fedot/core/operations/evaluation/operation_implementations/implementation_interfaces.py @@ -5,7 +5,7 @@ import numpy as np from golem.core.log import default_log -from fedot.core.data.data import OutputData, InputData +from fedot.core.data.data import InputData, OutputData from fedot.core.operations.operation_parameters import OperationParameters from fedot.core.repository.dataset_types import DataTypesEnum from fedot.utilities.custom_errors import AbstractMethodNotImplementError diff --git a/fedot/core/operations/operation.py b/fedot/core/operations/operation.py index 3d4ae4134d..da44065277 100644 --- a/fedot/core/operations/operation.py +++ b/fedot/core/operations/operation.py @@ -1,5 +1,5 @@ from abc import abstractmethod -from typing import Optional, Union, Dict, Any +from typing import Any, Dict, Optional, Union from golem.core.log import default_log from golem.serializers.serializer import register_serializable @@ -120,6 +120,7 @@ def predict_for_fit(self, fitted_operation, data: InputData, params: Optional[Op def _predict(self, fitted_operation, data: InputData, params: Optional[OperationParameters] = None, output_mode: str = 'default', is_fit_stage: bool = False): + is_main_target = data.supplementary_data.is_main_target data_flow_length = data.supplementary_data.data_flow_length self._init(data.task, output_mode=output_mode, params=params, n_samples_data=data.features.shape[0]) diff --git a/fedot/core/repository/json_evaluation.py b/fedot/core/repository/json_evaluation.py index ba4483ce0e..9473fd03c4 100644 --- a/fedot/core/repository/json_evaluation.py +++ b/fedot/core/repository/json_evaluation.py @@ -1,5 +1,5 @@ from importlib import import_module -from typing import Union, TYPE_CHECKING, List +from typing import List, TYPE_CHECKING, Union # imports are required beneath in the function from fedot.core.repository.dataset_types import DataTypesEnum diff --git a/fedot/core/repository/operation_types_repository.py b/fedot/core/repository/operation_types_repository.py index 7e42d95e60..6555a35242 100644 --- a/fedot/core/repository/operation_types_repository.py +++ b/fedot/core/repository/operation_types_repository.py @@ -2,13 +2,13 @@ import os from collections import defaultdict from dataclasses import dataclass -from typing import Dict, List, Optional, Union, TYPE_CHECKING +from typing import Dict, List, Optional, TYPE_CHECKING, Union import numpy as np from golem.core.log import default_log from golem.utilities.data_structures import ensure_wrapped_in_sequence -from fedot.core.constants import BEST_QUALITY_PRESET_NAME, AUTO_PRESET_NAME +from fedot.core.constants import AUTO_PRESET_NAME, BEST_QUALITY_PRESET_NAME from fedot.core.repository.dataset_types import DataTypesEnum from fedot.core.repository.json_evaluation import import_enums_from_str, import_strategy_from_str, read_field from fedot.core.repository.tasks import Task, TaskTypesEnum diff --git a/fedot/preprocessing/base_preprocessing.py b/fedot/preprocessing/base_preprocessing.py index ae0ef29140..4c9de6cf5c 100644 --- a/fedot/preprocessing/base_preprocessing.py +++ b/fedot/preprocessing/base_preprocessing.py @@ -1,5 +1,5 @@ from abc import ABC, abstractmethod -from typing import Dict, List, Union, TYPE_CHECKING +from typing import Dict, Union, TYPE_CHECKING import numpy as np from sklearn.preprocessing import LabelEncoder @@ -168,6 +168,7 @@ def convert_indexes_for_predict(self, pipeline, data: Union[InputData, MultiModa def restore_index(self, input_data: InputData, result: OutputData) -> OutputData: """ restores index from ``input_data`` into ``result`` + Args: input_data: data to take the index from result: data to store index into diff --git a/fedot/preprocessing/categorical.py b/fedot/preprocessing/categorical.py index c0ea6913eb..5cde088d7a 100644 --- a/fedot/preprocessing/categorical.py +++ b/fedot/preprocessing/categorical.py @@ -6,7 +6,7 @@ from fedot.core.data.data import InputData from fedot.core.data.data_preprocessing import find_categorical_columns -from fedot.preprocessing.data_types import TYPE_TO_ID, FEDOT_STR_NAN +from fedot.preprocessing.data_types import FEDOT_STR_NAN, TYPE_TO_ID class BinaryCategoricalPreprocessor: diff --git a/fedot/preprocessing/data_types.py b/fedot/preprocessing/data_types.py index 96278bf0b3..32d5f7e323 100644 --- a/fedot/preprocessing/data_types.py +++ b/fedot/preprocessing/data_types.py @@ -1,10 +1,11 @@ from __future__ import annotations from collections.abc import Sequence -from typing import TYPE_CHECKING, Tuple, Optional, List, Dict +from typing import TYPE_CHECKING, Dict, List, Optional, Tuple import numpy as np import pandas as pd + from golem.core.log import LoggerAdapter, default_log from fedot.core.repository.tasks import Task, TaskTypesEnum diff --git a/fedot/preprocessing/dummy_preprocessing.py b/fedot/preprocessing/dummy_preprocessing.py index 36b76a390c..d3c4206e34 100644 --- a/fedot/preprocessing/dummy_preprocessing.py +++ b/fedot/preprocessing/dummy_preprocessing.py @@ -1,4 +1,4 @@ -from typing import Union, TYPE_CHECKING +from typing import TYPE_CHECKING, Union import numpy as np from golem.core.log import default_log diff --git a/fedot/preprocessing/preprocessing.py b/fedot/preprocessing/preprocessing.py index 6292cc786c..95985539d0 100644 --- a/fedot/preprocessing/preprocessing.py +++ b/fedot/preprocessing/preprocessing.py @@ -1,5 +1,5 @@ from copy import copy -from typing import Union, Optional +from typing import Optional, Union import numpy as np import pandas as pd @@ -8,7 +8,7 @@ from sklearn.preprocessing import LabelEncoder from fedot.core.data.data import InputData, np_datetime_to_numeric -from fedot.core.data.data import OutputData, data_type_is_table, data_type_is_ts, data_type_is_text +from fedot.core.data.data import OutputData, data_type_is_table, data_type_is_text, data_type_is_ts from fedot.core.data.data_preprocessing import ( data_has_categorical_features, data_has_missing_values, @@ -28,7 +28,7 @@ from fedot.core.repository.tasks import TaskTypesEnum from fedot.preprocessing.base_preprocessing import BasePreprocessor from fedot.preprocessing.categorical import BinaryCategoricalPreprocessor -from fedot.preprocessing.data_type_check import exclude_ts, exclude_multi_ts, exclude_image +from fedot.preprocessing.data_type_check import exclude_image, exclude_multi_ts, exclude_ts from fedot.preprocessing.data_types import TYPE_TO_ID, TableTypesCorrector from fedot.preprocessing.structure import DEFAULT_SOURCE_NAME, PipelineStructureExplorer diff --git a/test/integration/models/test_repository.py b/test/integration/models/test_repository.py index 39eee3afd1..fd63299531 100644 --- a/test/integration/models/test_repository.py +++ b/test/integration/models/test_repository.py @@ -7,7 +7,7 @@ from fedot.core.repository.operation_types_repository import (OperationTypesRepository, get_operation_type_from_id) from fedot.core.repository.pipeline_operation_repository import PipelineOperationRepository -from fedot.core.repository.tasks import TaskTypesEnum, Task +from fedot.core.repository.tasks import Task, TaskTypesEnum def mocked_path(): diff --git a/test/unit/preprocessing/test_preprocessors.py b/test/unit/preprocessing/test_preprocessors.py index 9cc3027ebb..856f59f40d 100644 --- a/test/unit/preprocessing/test_preprocessors.py +++ b/test/unit/preprocessing/test_preprocessors.py @@ -7,13 +7,13 @@ from fedot.core.pipelines.node import PipelineNode from fedot.core.pipelines.pipeline import Pipeline from fedot.core.repository.dataset_types import DataTypesEnum -from fedot.core.repository.tasks import TaskTypesEnum, Task +from fedot.core.repository.tasks import Task, TaskTypesEnum from fedot.core.utils import fedot_project_root from fedot.preprocessing.data_types import TYPE_TO_ID from fedot.preprocessing.data_types import TableTypesCorrector, apply_type_transformation from fedot.preprocessing.structure import DEFAULT_SOURCE_NAME -from test.unit.preprocessing.test_pipeline_preprocessing import data_with_mixed_types_in_each_column, \ - correct_preprocessing_params +from test.unit.preprocessing.test_pipeline_preprocessing import correct_preprocessing_params, \ + data_with_mixed_types_in_each_column def get_mixed_data_with_str_and_float_values(idx: int = None):