upgini 1.2.135a3__tar.gz → 1.2.136__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.

Potentially problematic release.


This version of upgini might be problematic. Click here for more details.

Files changed (82) hide show
  1. {upgini-1.2.135a3 → upgini-1.2.136}/PKG-INFO +1 -1
  2. upgini-1.2.136/src/upgini/__about__.py +1 -0
  3. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/dataset.py +3 -0
  4. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/features_enricher.py +10 -3
  5. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/metadata.py +1 -0
  6. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/features_validator.py +1 -1
  7. upgini-1.2.135a3/src/upgini/__about__.py +0 -1
  8. {upgini-1.2.135a3 → upgini-1.2.136}/.gitignore +0 -0
  9. {upgini-1.2.135a3 → upgini-1.2.136}/LICENSE +0 -0
  10. {upgini-1.2.135a3 → upgini-1.2.136}/README.md +0 -0
  11. {upgini-1.2.135a3 → upgini-1.2.136}/pyproject.toml +0 -0
  12. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/__init__.py +0 -0
  13. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/ads.py +0 -0
  14. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/ads_management/__init__.py +0 -0
  15. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/ads_management/ads_manager.py +0 -0
  16. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/__init__.py +0 -0
  17. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/all_operators.py +0 -0
  18. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/binary.py +0 -0
  19. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/date.py +0 -0
  20. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/feature.py +0 -0
  21. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/groupby.py +0 -0
  22. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/operator.py +0 -0
  23. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/timeseries/__init__.py +0 -0
  24. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/timeseries/base.py +0 -0
  25. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/timeseries/cross.py +0 -0
  26. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/timeseries/delta.py +0 -0
  27. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/timeseries/lag.py +0 -0
  28. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/timeseries/roll.py +0 -0
  29. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/timeseries/trend.py +0 -0
  30. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/timeseries/volatility.py +0 -0
  31. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/unary.py +0 -0
  32. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/utils.py +0 -0
  33. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/autofe/vector.py +0 -0
  34. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/data_source/__init__.py +0 -0
  35. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/data_source/data_source_publisher.py +0 -0
  36. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/errors.py +0 -0
  37. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/http.py +0 -0
  38. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/mdc/__init__.py +0 -0
  39. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/mdc/context.py +0 -0
  40. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/metrics.py +0 -0
  41. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/normalizer/__init__.py +0 -0
  42. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/normalizer/normalize_utils.py +0 -0
  43. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/resource_bundle/__init__.py +0 -0
  44. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/resource_bundle/exceptions.py +0 -0
  45. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/resource_bundle/strings.properties +0 -0
  46. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/resource_bundle/strings_widget.properties +0 -0
  47. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/sampler/__init__.py +0 -0
  48. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/sampler/base.py +0 -0
  49. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/sampler/random_under_sampler.py +0 -0
  50. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/sampler/utils.py +0 -0
  51. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/search_task.py +0 -0
  52. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/spinner.py +0 -0
  53. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/Roboto-Regular.ttf +0 -0
  54. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/__init__.py +0 -0
  55. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/base_search_key_detector.py +0 -0
  56. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/blocked_time_series.py +0 -0
  57. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/config.py +0 -0
  58. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/country_utils.py +0 -0
  59. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/custom_loss_utils.py +0 -0
  60. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/cv_utils.py +0 -0
  61. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/datetime_utils.py +0 -0
  62. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/deduplicate_utils.py +0 -0
  63. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/display_utils.py +0 -0
  64. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/email_utils.py +0 -0
  65. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/fallback_progress_bar.py +0 -0
  66. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/feature_info.py +0 -0
  67. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/format.py +0 -0
  68. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/hash_utils.py +0 -0
  69. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/ip_utils.py +0 -0
  70. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/mstats.py +0 -0
  71. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/phone_utils.py +0 -0
  72. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/postal_code_utils.py +0 -0
  73. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/progress_bar.py +0 -0
  74. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/psi.py +0 -0
  75. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/sample_utils.py +0 -0
  76. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/sklearn_ext.py +0 -0
  77. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/sort.py +0 -0
  78. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/target_utils.py +0 -0
  79. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/track_info.py +0 -0
  80. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/ts_utils.py +0 -0
  81. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/utils/warning_counter.py +0 -0
  82. {upgini-1.2.135a3 → upgini-1.2.136}/src/upgini/version_validator.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: upgini
3
- Version: 1.2.135a3
3
+ Version: 1.2.136
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.136"
@@ -71,6 +71,7 @@ class Dataset:
71
71
  date_column: Optional[str] = None,
72
72
  id_columns: Optional[List[str]] = None,
73
73
  is_imbalanced: bool = False,
74
+ dropped_columns: Optional[List[str]] = None,
74
75
  random_state: Optional[int] = None,
75
76
  sample_config: Optional[SampleConfig] = None,
76
77
  rest_client: Optional[_RestClient] = None,
@@ -118,6 +119,7 @@ class Dataset:
118
119
  self.is_imbalanced: bool = False
119
120
  self.id_columns = id_columns
120
121
  self.is_imbalanced = is_imbalanced
122
+ self.dropped_columns = dropped_columns
121
123
  self.date_column = date_column
122
124
  if logger is not None:
123
125
  self.logger = logger
@@ -476,6 +478,7 @@ class Dataset:
476
478
  hierarchicalGroupKeys=self.hierarchical_group_keys,
477
479
  hierarchicalSubgroupKeys=self.hierarchical_subgroup_keys,
478
480
  taskType=self.task_type,
481
+ droppedColumns=self.dropped_columns,
479
482
  )
480
483
 
481
484
  @staticmethod
@@ -1737,6 +1737,10 @@ class FeaturesEnricher(TransformerMixin):
1737
1737
 
1738
1738
  self.logger.info(f"Excluding search keys: {excluding_search_keys}")
1739
1739
 
1740
+ file_meta = self._search_task.get_file_metadata(trace_id)
1741
+ fit_dropped_features = self.fit_dropped_features or file_meta.droppedColumns or []
1742
+ original_dropped_features = [columns_renaming.get(f, f) for f in fit_dropped_features]
1743
+
1740
1744
  client_features = [
1741
1745
  c
1742
1746
  for c in validated_X.columns.to_list()
@@ -1744,7 +1748,7 @@ class FeaturesEnricher(TransformerMixin):
1744
1748
  and c
1745
1749
  not in (
1746
1750
  excluding_search_keys
1747
- + list(self.fit_dropped_features)
1751
+ + original_dropped_features
1748
1752
  + [DateTimeConverter.DATETIME_COL, SYSTEM_RECORD_ID, ENTITY_SYSTEM_RECORD_ID]
1749
1753
  )
1750
1754
  ]
@@ -2955,8 +2959,10 @@ if response.status_code == 200:
2955
2959
  trace_id: str,
2956
2960
  is_transform: bool = False,
2957
2961
  ):
2958
- fit_input_columns = [c.originalName for c in self._search_task.get_file_metadata(trace_id).columns]
2959
- original_dropped_features = [self.fit_columns_renaming.get(c, c) for c in self.fit_dropped_features]
2962
+ file_meta = self._search_task.get_file_metadata(trace_id)
2963
+ fit_dropped_features = self.fit_dropped_features or file_meta.droppedColumns or []
2964
+ fit_input_columns = [c.originalName for c in file_meta.columns]
2965
+ original_dropped_features = [self.fit_columns_renaming.get(c, c) for c in fit_dropped_features]
2960
2966
  new_columns_on_transform = [
2961
2967
  c for c in validated_Xy.columns if c not in fit_input_columns and c not in original_dropped_features
2962
2968
  ]
@@ -3380,6 +3386,7 @@ if response.status_code == 200:
3380
3386
  cv_type=self.cv,
3381
3387
  id_columns=self.__get_renamed_id_columns(),
3382
3388
  is_imbalanced=self.imbalanced,
3389
+ dropped_columns=[self.fit_columns_renaming.get(f, f) for f in self.fit_dropped_features],
3383
3390
  date_column=self._get_date_column(self.fit_search_keys),
3384
3391
  date_format=self.date_format,
3385
3392
  random_state=self.random_state,
@@ -252,6 +252,7 @@ class FileMetadata(BaseModel):
252
252
  rowsCount: Optional[int] = None
253
253
  checksumMD5: Optional[str] = None
254
254
  digest: Optional[str] = None
255
+ droppedColumns: Optional[List[str]] = None
255
256
 
256
257
  def column_by_name(self, name: str) -> Optional[FileColumnMetadata]:
257
258
  for c in self.columns:
@@ -46,7 +46,7 @@ class FeaturesValidator:
46
46
 
47
47
  columns_renaming = columns_renaming or {}
48
48
 
49
- if one_hot_encoded_features:
49
+ if one_hot_encoded_features and len(one_hot_encoded_features) > 1:
50
50
  msg = bundle.get("one_hot_encoded_features").format(
51
51
  [columns_renaming.get(f, f) for f in one_hot_encoded_features]
52
52
  )
@@ -1 +0,0 @@
1
- __version__ = "1.2.135a3"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes