From 7e21ce6250d04714856e4e3d581f44add60793bd Mon Sep 17 00:00:00 2001 From: SebastienMelo Date: Wed, 14 Jan 2026 11:20:51 +0100 Subject: [PATCH 1/8] update to sklearn 1.8 --- check_env.py | 2 +- environment-dev.yml | 2 +- environment.yml | 2 +- local-install-instructions.md | 2 +- requirements-dev.txt | 2 +- requirements.txt | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/check_env.py b/check_env.py index c5ae4086e..e3b8645ab 100644 --- a/check_env.py +++ b/check_env.py @@ -66,7 +66,7 @@ def import_version(pkg, min_ver, fail_msg=""): "numpy": "1.16", "scipy": "1.2", "matplotlib": "3.0", - "sklearn": "1.6", + "sklearn": "1.8", "pandas": "1", "seaborn": "0.11", "notebook": "5.7", diff --git a/environment-dev.yml b/environment-dev.yml index fe6de1e72..bf79eebe9 100644 --- a/environment-dev.yml +++ b/environment-dev.yml @@ -2,7 +2,7 @@ name: scikit-learn-course channels: - conda-forge dependencies: - - scikit-learn >= 1.6 + - scikit-learn >= 1.8 - pandas >= 1 - matplotlib-base - seaborn >= 0.13 diff --git a/environment.yml b/environment.yml index b73214414..b3302e837 100644 --- a/environment.yml +++ b/environment.yml @@ -4,7 +4,7 @@ channels: - conda-forge dependencies: - - scikit-learn >= 1.6 + - scikit-learn >= 1.8 - pandas >= 1 - matplotlib-base - seaborn >= 0.13 diff --git a/local-install-instructions.md b/local-install-instructions.md index 2155b6917..77575610b 100644 --- a/local-install-instructions.md +++ b/local-install-instructions.md @@ -46,7 +46,7 @@ Using python in /home/lesteve/miniconda3/envs/scikit-learn-course [ OK ] numpy version 1.19.5 [ OK ] scipy version 1.6.0 [ OK ] matplotlib version 3.3.3 -[ OK ] sklearn version 1.6 +[ OK ] sklearn version 1.8 [ OK ] pandas version 2.0 [ OK ] seaborn version 0.13 [ OK ] notebook version 6.2.0 diff --git a/requirements-dev.txt b/requirements-dev.txt index 503d326e1..d70385e26 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,4 +1,4 @@ -scikit-learn>=1.6 +scikit-learn>=1.8 pandas >= 1 matplotlib seaborn >= 0.13 diff --git a/requirements.txt b/requirements.txt index b0a22e372..eefe6a50d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -scikit-learn>=1.6 +scikit-learn>=1.8 pandas >= 1 matplotlib>=3.10 seaborn >= 0.13 From cbec06df75f567fcd8923484d5dfd511ead95a14 Mon Sep 17 00:00:00 2001 From: SebastienMelo Date: Wed, 14 Jan 2026 11:51:37 +0100 Subject: [PATCH 2/8] empty From 57540e351bbfc98957a38ddef3c1cec02f302e66 Mon Sep 17 00:00:00 2001 From: SebastienMelo Date: Wed, 14 Jan 2026 12:06:29 +0100 Subject: [PATCH 3/8] python 3.11 fix --- check_env.py | 4 ++-- environment-dev.yml | 1 + environment.yml | 1 + requirements-dev.txt | 1 + requirements.txt | 1 + 5 files changed, 6 insertions(+), 2 deletions(-) diff --git a/check_env.py b/check_env.py index e3b8645ab..3c168abe3 100644 --- a/check_env.py +++ b/check_env.py @@ -18,11 +18,11 @@ pyversion_str = f"{sys.version_info.major}.{sys.version_info.minor}" pyversion = Version(pyversion_str) -if pyversion < Version("3.8"): +if pyversion < Version("3.11"): print( FAIL, ( - "Python version 3.8 or above is required," + "Python version 3.11 or above is required," f" but {pyversion_str} is installed." ), ) diff --git a/environment-dev.yml b/environment-dev.yml index bf79eebe9..fcee84d28 100644 --- a/environment-dev.yml +++ b/environment-dev.yml @@ -2,6 +2,7 @@ name: scikit-learn-course channels: - conda-forge dependencies: + - python=3.11 - scikit-learn >= 1.8 - pandas >= 1 - matplotlib-base diff --git a/environment.yml b/environment.yml index b3302e837..9b6cc2127 100644 --- a/environment.yml +++ b/environment.yml @@ -4,6 +4,7 @@ channels: - conda-forge dependencies: + - python=3.11 - scikit-learn >= 1.8 - pandas >= 1 - matplotlib-base diff --git a/requirements-dev.txt b/requirements-dev.txt index d70385e26..a3ae4bb69 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,3 +1,4 @@ +python=3.11 scikit-learn>=1.8 pandas >= 1 matplotlib diff --git a/requirements.txt b/requirements.txt index eefe6a50d..6157c56fa 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ +python=3.11 scikit-learn>=1.8 pandas >= 1 matplotlib>=3.10 From 4d28deaa76e7a25dc518bbe517d9b58bad0686ec Mon Sep 17 00:00:00 2001 From: SebastienMelo Date: Wed, 14 Jan 2026 12:09:01 +0100 Subject: [PATCH 4/8] fix --- requirements-dev.txt | 2 +- requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements-dev.txt b/requirements-dev.txt index a3ae4bb69..df5f8319b 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,4 +1,4 @@ -python=3.11 +python==3.11 scikit-learn>=1.8 pandas >= 1 matplotlib diff --git a/requirements.txt b/requirements.txt index 6157c56fa..7c0a37b84 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -python=3.11 +python==3.11 scikit-learn>=1.8 pandas >= 1 matplotlib>=3.10 From 0791166035ac2b130efe7e0c47d194433304dd62 Mon Sep 17 00:00:00 2001 From: SebastienMelo Date: Wed, 14 Jan 2026 12:13:50 +0100 Subject: [PATCH 5/8] git hub pages python 3.11 --- .github/workflows/deploy-gh-pages.yml | 2 +- requirements-dev.txt | 1 - requirements.txt | 1 - 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/deploy-gh-pages.yml b/.github/workflows/deploy-gh-pages.yml index 4091264a8..edce58a49 100644 --- a/.github/workflows/deploy-gh-pages.yml +++ b/.github/workflows/deploy-gh-pages.yml @@ -25,7 +25,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v4 with: - python-version: 3.9 + python-version: 3.11 - name: Install dependencies run: | diff --git a/requirements-dev.txt b/requirements-dev.txt index df5f8319b..d70385e26 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,4 +1,3 @@ -python==3.11 scikit-learn>=1.8 pandas >= 1 matplotlib diff --git a/requirements.txt b/requirements.txt index 7c0a37b84..eefe6a50d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,3 @@ -python==3.11 scikit-learn>=1.8 pandas >= 1 matplotlib>=3.10 From a92b8ac194414a6bcaa3869080809e31d3738ecd Mon Sep 17 00:00:00 2001 From: Arturo Amor <86408019+ArturoAmorQ@users.noreply.github.com> Date: Thu, 15 Jan 2026 09:22:06 -0600 Subject: [PATCH 6/8] FIX Pin jupyter-book version (#873) * MNT Bump jupyter-book version * Pin jupyter-book<2.0 instead * Iter --------- Co-authored-by: ArturoAmorQ --- environment-dev.yml | 2 +- requirements-dev.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/environment-dev.yml b/environment-dev.yml index fcee84d28..42a9e093e 100644 --- a/environment-dev.yml +++ b/environment-dev.yml @@ -14,4 +14,4 @@ dependencies: - packaging - pip - pip: - - jupyter-book >= 0.11 + - jupyter-book < 2.0 diff --git a/requirements-dev.txt b/requirements-dev.txt index d70385e26..500297a6e 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -3,7 +3,7 @@ pandas >= 1 matplotlib seaborn >= 0.13 plotly -jupyter-book>=0.11 +jupyter-book < 2.0 jupytext beautifulsoup4 IPython From 9ca3c4003db032592c566e76664d19291fdeb705 Mon Sep 17 00:00:00 2001 From: SebastienMelo <125986598+SebastienMelo@users.noreply.github.com> Date: Mon, 19 Jan 2026 10:42:40 +0100 Subject: [PATCH 7/8] MTN Exercise M4.01 target correction (#871) --- notebooks/linear_models_ex_01.ipynb | 2 +- notebooks/linear_models_sol_01.ipynb | 4 ++-- python_scripts/linear_models_ex_01.py | 2 +- python_scripts/linear_models_sol_01.py | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/notebooks/linear_models_ex_01.ipynb b/notebooks/linear_models_ex_01.ipynb index 3d85324d3..cf82db379 100644 --- a/notebooks/linear_models_ex_01.ipynb +++ b/notebooks/linear_models_ex_01.ipynb @@ -43,7 +43,7 @@ "penguins = pd.read_csv(\"../datasets/penguins_regression.csv\")\n", "feature_name = \"Flipper Length (mm)\"\n", "target_name = \"Body Mass (g)\"\n", - "data, target = penguins[[feature_name]], penguins[target_name]" + "data, target = penguins[[feature_name]], penguins[[target_name]]" ] }, { diff --git a/notebooks/linear_models_sol_01.ipynb b/notebooks/linear_models_sol_01.ipynb index f6f710ade..9d6ff3e4a 100644 --- a/notebooks/linear_models_sol_01.ipynb +++ b/notebooks/linear_models_sol_01.ipynb @@ -43,7 +43,7 @@ "penguins = pd.read_csv(\"../datasets/penguins_regression.csv\")\n", "feature_name = \"Flipper Length (mm)\"\n", "target_name = \"Body Mass (g)\"\n", - "data, target = penguins[[feature_name]], penguins[target_name]" + "data, target = penguins[[feature_name]], penguins[[target_name]]" ] }, { @@ -152,7 +152,7 @@ "def goodness_fit_measure(true_values, predictions):\n", " # we compute the error between the true values and the predictions of our\n", " # model\n", - " errors = np.ravel(true_values) - np.ravel(predictions)\n", + " errors = true_values - predictions\n", " # We have several possible strategies to reduce all errors to a single value.\n", " # Computing the mean error (sum divided by the number of element) might seem\n", " # like a good solution. However, we have negative errors that will misleadingly\n", diff --git a/python_scripts/linear_models_ex_01.py b/python_scripts/linear_models_ex_01.py index 4ddf7b808..17ec8ebc0 100644 --- a/python_scripts/linear_models_ex_01.py +++ b/python_scripts/linear_models_ex_01.py @@ -40,7 +40,7 @@ penguins = pd.read_csv("../datasets/penguins_regression.csv") feature_name = "Flipper Length (mm)" target_name = "Body Mass (g)" -data, target = penguins[[feature_name]], penguins[target_name] +data, target = penguins[[feature_name]], penguins[[target_name]] # %% [markdown] # ### Model definition diff --git a/python_scripts/linear_models_sol_01.py b/python_scripts/linear_models_sol_01.py index 0f98303be..1bf53ec66 100644 --- a/python_scripts/linear_models_sol_01.py +++ b/python_scripts/linear_models_sol_01.py @@ -34,7 +34,7 @@ penguins = pd.read_csv("../datasets/penguins_regression.csv") feature_name = "Flipper Length (mm)" target_name = "Body Mass (g)" -data, target = penguins[[feature_name]], penguins[target_name] +data, target = penguins[[feature_name]], penguins[[target_name]] # %% [markdown] # ### Model definition @@ -106,7 +106,7 @@ def linear_model_flipper_mass( def goodness_fit_measure(true_values, predictions): # we compute the error between the true values and the predictions of our # model - errors = np.ravel(true_values) - np.ravel(predictions) + errors = true_values - predictions # We have several possible strategies to reduce all errors to a single value. # Computing the mean error (sum divided by the number of element) might seem # like a good solution. However, we have negative errors that will misleadingly From b1bf17c3f4f902b3162b50946a7bb625a6293b77 Mon Sep 17 00:00:00 2001 From: SebastienMelo Date: Wed, 21 Jan 2026 14:56:04 +0100 Subject: [PATCH 8/8] erase force_int_remainder_cols --- python_scripts/parameter_tuning_grid_search.py | 1 - python_scripts/parameter_tuning_nested.py | 1 - python_scripts/parameter_tuning_randomized_search.py | 1 - 3 files changed, 3 deletions(-) diff --git a/python_scripts/parameter_tuning_grid_search.py b/python_scripts/parameter_tuning_grid_search.py index 30979909a..e029fb80e 100644 --- a/python_scripts/parameter_tuning_grid_search.py +++ b/python_scripts/parameter_tuning_grid_search.py @@ -91,7 +91,6 @@ remainder="passthrough", # Silence a deprecation warning in scikit-learn v1.6 related to how the # ColumnTransformer stores an attribute that we do not use in this notebook - force_int_remainder_cols=False, ) # %% [markdown] diff --git a/python_scripts/parameter_tuning_nested.py b/python_scripts/parameter_tuning_nested.py index 690398a27..6acc173ad 100644 --- a/python_scripts/parameter_tuning_nested.py +++ b/python_scripts/parameter_tuning_nested.py @@ -54,7 +54,6 @@ preprocessor = make_column_transformer( (categorical_preprocessor, categorical_columns), remainder="passthrough", - force_int_remainder_cols=False, # Silence a warning in scikit-learn v1.6. ) # %% diff --git a/python_scripts/parameter_tuning_randomized_search.py b/python_scripts/parameter_tuning_randomized_search.py index 7acf7da7e..678bdf00f 100644 --- a/python_scripts/parameter_tuning_randomized_search.py +++ b/python_scripts/parameter_tuning_randomized_search.py @@ -73,7 +73,6 @@ preprocessor = make_column_transformer( (categorical_preprocessor, categorical_columns), remainder="passthrough", - force_int_remainder_cols=False, # Silence a warning in scikit-learn v1.6. ) # %%