upgini 1.2.5__py3-none-any.whl → 1.2.6__py3-none-any.whl
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.
- upgini/__about__.py +1 -1
- upgini/autofe/all_operands.py +2 -1
- upgini/autofe/feature.py +44 -14
- {upgini-1.2.5.dist-info → upgini-1.2.6.dist-info}/METADATA +1 -1
- {upgini-1.2.5.dist-info → upgini-1.2.6.dist-info}/RECORD +7 -7
- {upgini-1.2.5.dist-info → upgini-1.2.6.dist-info}/WHEEL +1 -1
- {upgini-1.2.5.dist-info → upgini-1.2.6.dist-info}/licenses/LICENSE +0 -0
upgini/__about__.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "1.2.
|
|
1
|
+
__version__ = "1.2.6"
|
upgini/autofe/all_operands.py
CHANGED
upgini/autofe/feature.py
CHANGED
|
@@ -22,6 +22,9 @@ class Column:
|
|
|
22
22
|
def set_op_params(self, params: Dict[str, str]) -> "Column":
|
|
23
23
|
return self
|
|
24
24
|
|
|
25
|
+
def get_op_params(self, **kwargs):
|
|
26
|
+
return dict()
|
|
27
|
+
|
|
25
28
|
def rename_columns(self, mapping: Dict[str, str]) -> "Column":
|
|
26
29
|
self.name = self._unhash(mapping.get(self.name) or self.name)
|
|
27
30
|
return self
|
|
@@ -44,6 +47,10 @@ class Column:
|
|
|
44
47
|
def get_columns(self, **kwargs) -> List[str]:
|
|
45
48
|
return [self.name]
|
|
46
49
|
|
|
50
|
+
@property
|
|
51
|
+
def children(self) -> List[Union["Feature", "Column"]]:
|
|
52
|
+
return []
|
|
53
|
+
|
|
47
54
|
def infer_type(self, data: pd.DataFrame) -> DtypeObj:
|
|
48
55
|
return data[self.name].dtype
|
|
49
56
|
|
|
@@ -88,9 +95,30 @@ class Feature:
|
|
|
88
95
|
self.op.set_params(params)
|
|
89
96
|
|
|
90
97
|
for child in self.children:
|
|
91
|
-
|
|
98
|
+
child_params = {
|
|
99
|
+
k[len(child.get_display_name()) + 1 :]: v
|
|
100
|
+
for k, v in params.items()
|
|
101
|
+
if k.startswith(child.get_display_name())
|
|
102
|
+
}
|
|
103
|
+
if not child_params:
|
|
104
|
+
child_params = params
|
|
105
|
+
child.set_op_params(child_params)
|
|
92
106
|
return self
|
|
93
107
|
|
|
108
|
+
def get_op_params(self, **kwargs) -> Dict[str, str]:
|
|
109
|
+
return {
|
|
110
|
+
k: str(v)
|
|
111
|
+
for k, v in dict(
|
|
112
|
+
(
|
|
113
|
+
(f"{child.get_display_name(**kwargs)}_{k}", v)
|
|
114
|
+
for child in self.children
|
|
115
|
+
for k, v in child.get_op_params(**kwargs).items()
|
|
116
|
+
),
|
|
117
|
+
**(self.op.get_params() or {}),
|
|
118
|
+
).items()
|
|
119
|
+
if v is not None
|
|
120
|
+
}
|
|
121
|
+
|
|
94
122
|
def get_hash(self) -> str:
|
|
95
123
|
return hashlib.sha256(
|
|
96
124
|
"_".join([self.op.name] + [ch.get_display_name() for ch in self.children]).encode("utf-8")
|
|
@@ -326,24 +354,26 @@ class FeatureGroup:
|
|
|
326
354
|
return names
|
|
327
355
|
|
|
328
356
|
def calculate(self, data: pd.DataFrame, is_root=False) -> pd.DataFrame:
|
|
329
|
-
main_column = None if self.main_column_node is None else self.main_column_node.get_columns()[0]
|
|
330
357
|
if isinstance(self.op, PandasOperand):
|
|
331
|
-
|
|
332
|
-
lower_order_children = [
|
|
358
|
+
main_column = None if self.main_column_node is None else self.main_column_node.get_display_name()
|
|
359
|
+
lower_order_children = []
|
|
360
|
+
if self.main_column_node is not None:
|
|
361
|
+
lower_order_children.append(self.main_column_node)
|
|
362
|
+
lower_order_children.extend(
|
|
333
363
|
ch for f in self.children for ch in f.children if ch.get_display_name() != main_column
|
|
334
|
-
|
|
364
|
+
)
|
|
335
365
|
lower_order_names = [ch.get_display_name() for ch in lower_order_children]
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
child_data.columns = ([main_column] if main_column is not None else []) + lower_order_names
|
|
342
|
-
else:
|
|
343
|
-
child_data = data[columns]
|
|
366
|
+
child_data = pd.concat(
|
|
367
|
+
[ch.calculate(data) for ch in lower_order_children],
|
|
368
|
+
axis=1,
|
|
369
|
+
)
|
|
370
|
+
child_data.columns = lower_order_names
|
|
344
371
|
|
|
345
372
|
new_data = self.op.calculate_group(child_data, main_column=main_column)
|
|
346
|
-
new_data.rename(
|
|
373
|
+
new_data.rename(
|
|
374
|
+
columns=dict(zip((n for n in lower_order_names if n != main_column), self.get_display_names())),
|
|
375
|
+
inplace=True,
|
|
376
|
+
)
|
|
347
377
|
else:
|
|
348
378
|
raise NotImplementedError(f"Unrecognized operator {self.op.name}.")
|
|
349
379
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
upgini/__about__.py,sha256=
|
|
1
|
+
upgini/__about__.py,sha256=vMQK58X8_YZGKzRm0ThvPAKFtpfyejGmUnDrY9RQ13w,22
|
|
2
2
|
upgini/__init__.py,sha256=M64LwQTBa-5Jz24Zm2h8rWwlKQQ1J8nP7gGgIciS0WU,589
|
|
3
3
|
upgini/ads.py,sha256=nvuRxRx5MHDMgPr9SiU-fsqRdFaBv8p4_v1oqiysKpc,2714
|
|
4
4
|
upgini/dataset.py,sha256=olZ-OHSfBNoBSCo7R5t7uCLukI2nO7afpx_A-HCiJLk,31067
|
|
@@ -14,10 +14,10 @@ upgini/version_validator.py,sha256=ddSKUK_-eGJB3NgrqOMoWJU-OxQ253WsNLp8aqJkaIM,1
|
|
|
14
14
|
upgini/ads_management/__init__.py,sha256=qzyisOToVRP-tquAJD1PblZhNtMrOB8FiyF9JvfkvgE,50
|
|
15
15
|
upgini/ads_management/ads_manager.py,sha256=igVbN2jz80Umb2BUJixmJVj-zx8unoKpecVo-R-nGdw,2648
|
|
16
16
|
upgini/autofe/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
|
-
upgini/autofe/all_operands.py,sha256=
|
|
17
|
+
upgini/autofe/all_operands.py,sha256=cCCB44qvkmuWyiRM5Xykx8tkHPIjQthrWyj67STWN80,2578
|
|
18
18
|
upgini/autofe/binary.py,sha256=TRjEdxsfyPY5E8ksYfdKMmU6GtvALfGFPNVIG7DBhzM,7520
|
|
19
19
|
upgini/autofe/date.py,sha256=OpFc3Al0xO3qlESn2Uokfxw51ArVqmh3xngWwdrsaqE,9762
|
|
20
|
-
upgini/autofe/feature.py,sha256=
|
|
20
|
+
upgini/autofe/feature.py,sha256=eL7wABUhDKZzv3E-RPJNcyGwSfB0UptcfU2RbvsOks4,15082
|
|
21
21
|
upgini/autofe/groupby.py,sha256=r-xl_keZZgm_tpiEoDhjYSkT6NHv7a4cRQR4wJ4uCp8,3263
|
|
22
22
|
upgini/autofe/operand.py,sha256=uk883RaNqgXqtkaRqA1re1d9OFnnpv0JVvelYx09Yw0,2943
|
|
23
23
|
upgini/autofe/unary.py,sha256=T3E7F3dA_7o_rkdCFq7JV6nHLzcoHLHQTcxO7y5Opa4,4646
|
|
@@ -57,7 +57,7 @@ upgini/utils/sklearn_ext.py,sha256=13jQS_k7v0aUtudXV6nGUEWjttPQzAW9AFYL5wgEz9k,4
|
|
|
57
57
|
upgini/utils/target_utils.py,sha256=BVtDmrmFMKerSUWaNOIEdzsYHIFiODdpnWbE50QDPDc,7864
|
|
58
58
|
upgini/utils/track_info.py,sha256=G5Lu1xxakg2_TQjKZk4b5SvrHsATTXNVV3NbvWtT8k8,5663
|
|
59
59
|
upgini/utils/warning_counter.py,sha256=dIWBB4dI5XRRJZudvIlqlIYKEiwLLPcXarsZuYRt338,227
|
|
60
|
-
upgini-1.2.
|
|
61
|
-
upgini-1.2.
|
|
62
|
-
upgini-1.2.
|
|
63
|
-
upgini-1.2.
|
|
60
|
+
upgini-1.2.6.dist-info/METADATA,sha256=NxVadJI-fglLuYE_HcGEWEqxxW8m-uF2T44BGWagFEU,48607
|
|
61
|
+
upgini-1.2.6.dist-info/WHEEL,sha256=zEMcRr9Kr03x1ozGwg5v9NQBKn3kndp6LSoSlVg-jhU,87
|
|
62
|
+
upgini-1.2.6.dist-info/licenses/LICENSE,sha256=5RRzgvdJUu3BUDfv4bzVU6FqKgwHlIay63pPCSmSgzw,1514
|
|
63
|
+
upgini-1.2.6.dist-info/RECORD,,
|
|
File without changes
|