upgini 1.2.157a4196.dev2__tar.gz → 1.2.157a4196.dev3__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.157a4196.dev2 → upgini-1.2.157a4196.dev3}/PKG-INFO +3 -3
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/README.md +2 -2
- upgini-1.2.157a4196.dev3/src/upgini/__about__.py +1 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/dataset.py +2 -11
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/features_enricher.py +8 -0
- upgini-1.2.157a4196.dev3/src/upgini/utils/pyarrow_utils.py +28 -0
- upgini-1.2.157a4196.dev2/src/upgini/__about__.py +0 -1
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/.gitignore +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/LICENSE +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/pyproject.toml +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/ads.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/ads_management/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/ads_management/ads_manager.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/all_operators.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/binary.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/date.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/feature.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/groupby.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/operator.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/base.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/cross.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/delta.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/lag.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/roll.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/trend.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/volatility.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/unary.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/vector.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/data_source/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/data_source/data_source_publisher.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/errors.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/http.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/mdc/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/mdc/context.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/metadata.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/metrics.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/normalizer/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/normalizer/normalize_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/resource_bundle/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/resource_bundle/exceptions.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/resource_bundle/strings.properties +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/resource_bundle/strings_widget.properties +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/sampler/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/sampler/base.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/sampler/random_under_sampler.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/sampler/utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/search_task.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/spinner.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/Roboto-Regular.ttf +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/__init__.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/base_search_key_detector.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/blocked_time_series.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/config.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/country_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/cpu_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/custom_loss_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/cv_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/datetime_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/deduplicate_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/display_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/email_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/fallback_progress_bar.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/feature_info.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/features_validator.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/format.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/hash_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/ip_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/mstats.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/one_hot_encoder.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/phone_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/postal_code_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/progress_bar.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/psi.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/sample_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/sklearn_ext.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/sort.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/target_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/track_info.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/ts_utils.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/warning_counter.py +0 -0
- {upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/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.157a4196.
|
|
3
|
+
Version: 1.2.157a4196.dev3
|
|
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/
|
|
@@ -203,10 +203,10 @@ Run [Simple sales prediction for retail stores](https://github.com/upgini/upgini
|
|
|
203
203
|
|
|
204
204
|
### 1. Install from PyPI
|
|
205
205
|
```python
|
|
206
|
-
%pip install
|
|
206
|
+
%pip install upgini
|
|
207
207
|
```
|
|
208
208
|
|
|
209
|
-
In Colab
|
|
209
|
+
In Colab, it is recommended to **restart the runtime after install** before importing upgini. Otherwise pyarrow may fail with a binary incompatibility error.
|
|
210
210
|
<details>
|
|
211
211
|
<summary>
|
|
212
212
|
🐳 <b>Docker-way</b>
|
|
@@ -158,10 +158,10 @@ Run [Simple sales prediction for retail stores](https://github.com/upgini/upgini
|
|
|
158
158
|
|
|
159
159
|
### 1. Install from PyPI
|
|
160
160
|
```python
|
|
161
|
-
%pip install
|
|
161
|
+
%pip install upgini
|
|
162
162
|
```
|
|
163
163
|
|
|
164
|
-
In Colab
|
|
164
|
+
In Colab, it is recommended to **restart the runtime after install** before importing upgini. Otherwise pyarrow may fail with a binary incompatibility error.
|
|
165
165
|
<details>
|
|
166
166
|
<summary>
|
|
167
167
|
🐳 <b>Docker-way</b>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "1.2.157.a4196.dev3"
|
|
@@ -490,17 +490,8 @@ class Dataset:
|
|
|
490
490
|
parquet_file_path = f"{tmp_dir}/{self.dataset_name}.parquet"
|
|
491
491
|
|
|
492
492
|
# calculate deterministic digest for any environment
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
import pyarrow.parquet as pq
|
|
496
|
-
except ValueError as exc:
|
|
497
|
-
if "binary incompatibility" in str(exc) or "size changed" in str(exc):
|
|
498
|
-
raise ImportError(
|
|
499
|
-
"pyarrow was upgraded but the runtime still has an older version loaded. "
|
|
500
|
-
"Restart the runtime after installing upgini (Runtime -> Restart session in Colab), "
|
|
501
|
-
"then import upgini again."
|
|
502
|
-
) from exc
|
|
503
|
-
raise
|
|
493
|
+
import pyarrow as pa
|
|
494
|
+
import pyarrow.parquet as pq
|
|
504
495
|
|
|
505
496
|
table = pa.Table.from_pandas(df_without_fake_date, preserve_index=False)
|
|
506
497
|
table = table.replace_schema_metadata({}) # remove all metadata
|
|
@@ -105,6 +105,7 @@ from upgini.utils.feature_info import FeatureInfo, _round_shap_value
|
|
|
105
105
|
from upgini.utils.features_validator import FeaturesValidator
|
|
106
106
|
from upgini.utils.format import Format
|
|
107
107
|
from upgini.utils.hash_utils import file_hash, hash_input
|
|
108
|
+
from upgini.utils.pyarrow_utils import import_pyarrow_modules
|
|
108
109
|
from upgini.utils.ip_utils import IpSearchKeyConverter
|
|
109
110
|
from upgini.utils.phone_utils import PhoneSearchKeyDetector
|
|
110
111
|
from upgini.utils.postal_code_utils import PostalCodeSearchKeyDetector
|
|
@@ -508,6 +509,7 @@ class FeaturesEnricher(TransformerMixin):
|
|
|
508
509
|
stability_agg_func: str, optional (default="max")
|
|
509
510
|
Function to aggregate stability values. Can be "max", "min", "mean".
|
|
510
511
|
"""
|
|
512
|
+
self._ensure_pyarrow_available()
|
|
511
513
|
trace_id = self._get_trace_id()
|
|
512
514
|
if self.print_trace_id:
|
|
513
515
|
print(f"https://app.datadoghq.eu/logs?query=%40correlation_id%3A{trace_id}")
|
|
@@ -793,6 +795,7 @@ class FeaturesEnricher(TransformerMixin):
|
|
|
793
795
|
X_new: pandas.DataFrame of shape (n_samples, n_features_new)
|
|
794
796
|
Transformed dataframe, enriched with valuable features.
|
|
795
797
|
"""
|
|
798
|
+
self._ensure_pyarrow_available()
|
|
796
799
|
self.warning_counter.reset()
|
|
797
800
|
search_progress = SearchProgress(0.0, ProgressStage.START_TRANSFORM)
|
|
798
801
|
if progress_callback is not None:
|
|
@@ -922,6 +925,7 @@ class FeaturesEnricher(TransformerMixin):
|
|
|
922
925
|
Dataframe with metrics calculated on train and validation datasets.
|
|
923
926
|
"""
|
|
924
927
|
|
|
928
|
+
self._ensure_pyarrow_available()
|
|
925
929
|
trace_id = self._get_trace_id()
|
|
926
930
|
start_time = time.time()
|
|
927
931
|
search_id = self.search_id or (self._search_task.search_task_id if self._search_task is not None else None)
|
|
@@ -1320,6 +1324,10 @@ class FeaturesEnricher(TransformerMixin):
|
|
|
1320
1324
|
finally:
|
|
1321
1325
|
self.logger.info(f"Calculating metrics elapsed time: {time.time() - start_time}")
|
|
1322
1326
|
|
|
1327
|
+
@staticmethod
|
|
1328
|
+
def _ensure_pyarrow_available() -> None:
|
|
1329
|
+
import_pyarrow_modules()
|
|
1330
|
+
|
|
1323
1331
|
def _get_trace_id(self):
|
|
1324
1332
|
if get_mdc_fields().get("correlation_id") is not None:
|
|
1325
1333
|
return get_mdc_fields().get("correlation_id")
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import warnings
|
|
2
|
+
|
|
3
|
+
PYARROW_RUNTIME_RESTART_MESSAGE = (
|
|
4
|
+
"pyarrow was upgraded but the runtime still has an older version loaded. "
|
|
5
|
+
"Restart the runtime after installing upgini (Runtime -> Restart session in Colab), "
|
|
6
|
+
"then import upgini again."
|
|
7
|
+
)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def is_pyarrow_binary_incompatibility(exc: BaseException) -> bool:
|
|
11
|
+
msg = str(exc).lower()
|
|
12
|
+
return "binary incompatibility" in msg or "size changed" in msg or "ipcreadoptions" in msg
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def raise_pyarrow_runtime_error(exc: BaseException) -> None:
|
|
16
|
+
warnings.warn(PYARROW_RUNTIME_RESTART_MESSAGE, UserWarning, stacklevel=3)
|
|
17
|
+
raise ImportError(PYARROW_RUNTIME_RESTART_MESSAGE) from exc
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
def import_pyarrow_modules():
|
|
21
|
+
try:
|
|
22
|
+
import pyarrow as pa
|
|
23
|
+
import pyarrow.parquet as pq
|
|
24
|
+
except (ValueError, ImportError) as exc:
|
|
25
|
+
if is_pyarrow_binary_incompatibility(exc):
|
|
26
|
+
raise_pyarrow_runtime_error(exc)
|
|
27
|
+
raise
|
|
28
|
+
return pa, pq
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "1.2.157.a4196.dev2"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/ads_management/ads_manager.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
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/autofe/timeseries/volatility.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
|
|
File without changes
|
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/normalizer/normalize_utils.py
RENAMED
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/resource_bundle/__init__.py
RENAMED
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/resource_bundle/exceptions.py
RENAMED
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/resource_bundle/strings.properties
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/sampler/random_under_sampler.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/base_search_key_detector.py
RENAMED
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/blocked_time_series.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
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/fallback_progress_bar.py
RENAMED
|
File without changes
|
|
File without changes
|
{upgini-1.2.157a4196.dev2 → upgini-1.2.157a4196.dev3}/src/upgini/utils/features_validator.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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|