Skip to content

Commit 33cbf23

Browse files
committed
fix sklearn 1.8 and pytorch 2.9 issues
1 parent 2b080bf commit 33cbf23

File tree

3 files changed

+5
-3
lines changed

3 files changed

+5
-3
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,7 @@ and https://docs.ray.io/en/latest/cluster/vms/user-guides/community/slurm.html
201201
## Releases (see git tags)
202202

203203
- v1.7.2:
204+
- Added scikit-learn 1.8 compatibility.
204205
- Removed debug print in RealMLP.
205206
- fixed device memory estimation error in the scheduler when `CUDA_VISIBLE_DEVICES` was used.
206207
- v1.7.1:

pytabkit/models/alg_interfaces/rtdl_interfaces.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,8 @@ def _fit_sklearn(self, x_df: pd.DataFrame, y: np.ndarray, val_idxs: np.ndarray,
6969
# missing values were encoded as zero, we need to make them missing again
7070
self.replace_zero_by_nans = SimpleImputer(missing_values=0.,
7171
strategy="constant",
72-
fill_value=np.nan)
72+
fill_value=np.nan,
73+
keep_empty_features=True)
7374
x_train[:, self.categorical_indicator] = self.replace_zero_by_nans.fit_transform(
7475
x_train[:, self.categorical_indicator])
7576
self.ord_enc = OrdinalEncoder(dtype=np.float32, handle_unknown='use_encoded_value', unknown_value=-1,

pytabkit/models/nn_models/nn.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -787,11 +787,11 @@ def forward_tensors(self, tensors):
787787
for i, cs in enumerate(y_cs):
788788
if cs == 0:
789789
# already continuous
790-
new_y_cols.append(y[[slice(None)] * (y.dim() - 1) + [slice(i, i + 1)]])
790+
new_y_cols.append(y[tuple([slice(None)] * (y.dim() - 1) + [slice(i, i + 1)])])
791791
else:
792792
# make continuous
793793
# todo: is there a better one-hot function without the long -> float conversion?
794-
new_y_cols.append(F.one_hot(y[[slice(None)] * (y.dim() - 1) + [i]], num_classes=cs).float())
794+
new_y_cols.append(F.one_hot(y[tuple([slice(None)] * (y.dim() - 1) + [i])], num_classes=cs).float())
795795
return utils.join_dicts(tensors, {'y': torch.cat(new_y_cols, dim=-1)})
796796

797797

0 commit comments

Comments
 (0)