upgini 1.2.145a4065.dev1__tar.gz → 1.2.146a2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/PKG-INFO +2 -2
- upgini-1.2.146a2/src/upgini/__about__.py +1 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/dataset.py +4 -1
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/features_enricher.py +12 -11
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/resource_bundle/strings.properties +1 -1
- upgini-1.2.145a4065.dev1/src/upgini/__about__.py +0 -1
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/.gitignore +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/LICENSE +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/README.md +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/pyproject.toml +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/ads.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/ads_management/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/ads_management/ads_manager.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/all_operators.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/binary.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/date.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/feature.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/groupby.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/operator.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/timeseries/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/timeseries/base.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/timeseries/cross.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/timeseries/delta.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/timeseries/lag.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/timeseries/roll.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/timeseries/trend.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/timeseries/volatility.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/unary.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/autofe/vector.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/data_source/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/data_source/data_source_publisher.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/errors.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/http.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/mdc/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/mdc/context.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/metadata.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/metrics.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/normalizer/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/normalizer/normalize_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/resource_bundle/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/resource_bundle/exceptions.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/resource_bundle/strings_widget.properties +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/sampler/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/sampler/base.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/sampler/random_under_sampler.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/sampler/utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/search_task.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/spinner.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/Roboto-Regular.ttf +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/__init__.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/base_search_key_detector.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/blocked_time_series.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/config.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/country_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/custom_loss_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/cv_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/datetime_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/deduplicate_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/display_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/email_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/fallback_progress_bar.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/feature_info.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/features_validator.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/format.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/hash_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/ip_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/mstats.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/phone_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/postal_code_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/progress_bar.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/psi.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/sample_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/sklearn_ext.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/sort.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/target_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/track_info.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/ts_utils.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/utils/warning_counter.py +0 -0
- {upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/version_validator.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: upgini
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.146a2
|
|
4
4
|
Summary: Intelligent data search & enrichment for Machine Learning
|
|
5
5
|
Project-URL: Bug Reports, https://github.com/upgini/upgini/issues
|
|
6
6
|
Project-URL: Homepage, https://upgini.com/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "1.2.146a2"
|
|
@@ -370,7 +370,10 @@ class Dataset:
|
|
|
370
370
|
self.data["valid_keys"] = self.data["valid_keys"] + self.data[f"{col}_is_valid"]
|
|
371
371
|
self.data.drop(columns=f"{col}_is_valid", inplace=True)
|
|
372
372
|
|
|
373
|
-
|
|
373
|
+
if len(keys_to_validate) > 0:
|
|
374
|
+
self.data["is_valid"] = self.data["valid_keys"] > 0
|
|
375
|
+
else:
|
|
376
|
+
self.data["is_valid"] = True
|
|
374
377
|
self.data["is_valid"] = self.data["is_valid"] & self.data["valid_mandatory"]
|
|
375
378
|
self.data.drop(columns=["valid_keys", "valid_mandatory"], inplace=True)
|
|
376
379
|
|
|
@@ -3000,15 +3000,18 @@ if response.status_code == 200:
|
|
|
3000
3000
|
|
|
3001
3001
|
return selected_input_columns + selected_generated_features
|
|
3002
3002
|
|
|
3003
|
-
def
|
|
3003
|
+
def _validate_empty_search_keys(
|
|
3004
|
+
self, search_keys: dict[str, SearchKey], is_transform: bool = False
|
|
3005
|
+
):
|
|
3004
3006
|
if (search_keys is None or len(search_keys) == 0) and self.country_code is None:
|
|
3005
|
-
if
|
|
3006
|
-
self.logger.debug(
|
|
3007
|
-
return
|
|
3008
|
-
|
|
3009
|
-
|
|
3010
|
-
|
|
3007
|
+
if is_transform:
|
|
3008
|
+
self.logger.debug("Transform started without search_keys")
|
|
3009
|
+
# return
|
|
3010
|
+
else:
|
|
3011
|
+
self.logger.warning("search_keys not provided")
|
|
3012
|
+
# raise ValidationError(self.bundle.get("empty_search_keys"))
|
|
3011
3013
|
|
|
3014
|
+
def __validate_search_keys(self, search_keys: dict[str, SearchKey], search_id: str | None = None):
|
|
3012
3015
|
key_types = search_keys.values()
|
|
3013
3016
|
|
|
3014
3017
|
# Multiple search keys allowed only for PHONE, IP, POSTAL_CODE, EMAIL, HEM
|
|
@@ -4801,6 +4804,8 @@ if response.status_code == 200:
|
|
|
4801
4804
|
|
|
4802
4805
|
self.logger.info(f"Prepared search keys: {valid_search_keys}")
|
|
4803
4806
|
|
|
4807
|
+
# x = self._validate_empty_search_keys(x, valid_search_keys, is_transform=is_transform)
|
|
4808
|
+
|
|
4804
4809
|
return valid_search_keys
|
|
4805
4810
|
|
|
4806
4811
|
def __show_metrics(
|
|
@@ -4941,10 +4946,6 @@ if response.status_code == 200:
|
|
|
4941
4946
|
)
|
|
4942
4947
|
self.__log_warning(self.bundle.get("phone_detected_not_registered"))
|
|
4943
4948
|
|
|
4944
|
-
if (search_keys is None or len(search_keys) == 0) and self.country_code is None:
|
|
4945
|
-
self.logger.warning("search_keys not provided")
|
|
4946
|
-
raise ValidationError(self.bundle.get("empty_search_keys"))
|
|
4947
|
-
|
|
4948
4949
|
return search_keys
|
|
4949
4950
|
|
|
4950
4951
|
def _validate_binary_observations(self, y, task_type: ModelTaskType):
|
|
@@ -220,7 +220,7 @@ email_detected=Emails detected in column `{}`. It will be used as a search key\n
|
|
|
220
220
|
email_detected_not_registered=Emails detected in column `{}`. It can be used only with api_key from profile.upgini.com\nSee docs to turn off the automatic detection: https://github.com/upgini/upgini/blob/main/README.md#turn-off-autodetection-for-search-key-columns\n
|
|
221
221
|
phone_detected=Phone numbers detected in column `{}`. It can be used only with api_key from profile.upgini.com\nSee docs to turn off the automatic detection: https://github.com/upgini/upgini/blob/main/README.md#turn-off-autodetection-for-search-key-columns\n
|
|
222
222
|
phone_detected_not_registered=Phone numbers detected in column `{}`. It can be used only with api_key from profile.upgini.com\nSee docs to turn off the automatic detection: https://github.com/upgini/upgini/blob/main/README.md#turn-off-autodetection-for-search-key-columns\n
|
|
223
|
-
target_type_detected
|
|
223
|
+
target_type_detected=Detected task type: {}. Reason: {}\nYou can set task type manually with argument `model_task_type` of FeaturesEnricher constructor if task type detected incorrectly\n
|
|
224
224
|
binary_target_reason=only two unique label-values observed
|
|
225
225
|
non_numeric_multiclass_reason=non-numeric label values observed
|
|
226
226
|
few_unique_label_multiclass_reason=few unique label-values observed and can be considered as categorical
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "1.2.145a4065.dev1"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/data_source/data_source_publisher.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{upgini-1.2.145a4065.dev1 → upgini-1.2.146a2}/src/upgini/resource_bundle/strings_widget.properties
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|