From 77200de6ba56aa973bb72a9529b338e1d56d9761 Mon Sep 17 00:00:00 2001 From: Charitarth Chugh <37895518+charitarthchugh@users.noreply.github.com> Date: Thu, 14 Mar 2024 18:08:47 -0400 Subject: [PATCH 1/2] Fix pandas returning a series when calling nunique() Fixes https://github.com/manujosephv/pytorch_tabular/issues/404#issue-2147546679 --- src/pytorch_tabular/tabular_datamodule.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pytorch_tabular/tabular_datamodule.py b/src/pytorch_tabular/tabular_datamodule.py index 8428722b..b6d933c2 100644 --- a/src/pytorch_tabular/tabular_datamodule.py +++ b/src/pytorch_tabular/tabular_datamodule.py @@ -290,11 +290,11 @@ def _update_config(self, config) -> InferredConfig: raise ValueError(f"{config.task} is an unsupported task.") if self.train is not None: categorical_cardinality = [ - int(self.train[col].fillna("NA").nunique()) + 1 for col in config.categorical_cols + int(x)+1 for x in list(self.train[config.categorical_cols].fillna('NA').nunique().values) ] else: categorical_cardinality = [ - int(self.train_dataset.data[col].nunique()) + 1 for col in config.categorical_cols + int(x) + 1 for x in list(self.train_dataset.data[config.categorical_cols].nunique().values) ] if getattr(config, "embedding_dims", None) is not None: embedding_dims = config.embedding_dims From ed01b3a335bc2097a66c436e1bdc2253cc810db9 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 14 Mar 2024 22:12:04 +0000 Subject: [PATCH 2/2] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/pytorch_tabular/tabular_datamodule.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pytorch_tabular/tabular_datamodule.py b/src/pytorch_tabular/tabular_datamodule.py index b6d933c2..5241a395 100644 --- a/src/pytorch_tabular/tabular_datamodule.py +++ b/src/pytorch_tabular/tabular_datamodule.py @@ -290,11 +290,11 @@ def _update_config(self, config) -> InferredConfig: raise ValueError(f"{config.task} is an unsupported task.") if self.train is not None: categorical_cardinality = [ - int(x)+1 for x in list(self.train[config.categorical_cols].fillna('NA').nunique().values) + int(x) + 1 for x in list(self.train[config.categorical_cols].fillna("NA").nunique().values) ] else: categorical_cardinality = [ - int(x) + 1 for x in list(self.train_dataset.data[config.categorical_cols].nunique().values) + int(x) + 1 for x in list(self.train_dataset.data[config.categorical_cols].nunique().values) ] if getattr(config, "embedding_dims", None) is not None: embedding_dims = config.embedding_dims