From 0308b7a00c63ecc0c268c4858852be816978f3e0 Mon Sep 17 00:00:00 2001 From: Matt McKay Date: Tue, 18 Aug 2026 13:13:49 +1000 Subject: [PATCH 1/4] Update translation: lectures/pandas.md --- lectures/pandas.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lectures/pandas.md b/lectures/pandas.md index fa6ee67..dbed573 100644 --- a/lectures/pandas.md +++ b/lectures/pandas.md @@ -160,7 +160,7 @@ En substance, un `DataFrame` dans pandas est analogue à une feuille de calcul E Ainsi, c'est un outil puissant pour représenter et analyser des données naturellement organisées en lignes et en colonnes, souvent avec des indices descriptifs pour les lignes et les colonnes individuelles. -Regardons un exemple qui lit des données à partir du fichier CSV `pandas/data/test_pwt.csv`, tiré des [Penn World Tables](https://www.rug.nl/ggdc/productivity/pwt/pwt-releases/pwt-7.0). +Regardons un exemple qui lit des données à partir du fichier CSV `test_pwt.csv`, tiré des [Penn World Tables](https://www.rug.nl/ggdc/productivity/pwt/pwt-releases/pwt-7.0). Le jeu de données contient les indicateurs suivants @@ -176,7 +176,7 @@ Le jeu de données contient les indicateurs suivants Nous allons le lire depuis une URL en utilisant la fonction `read_csv` de `pandas`. ```{code-cell} ipython3 -df = pd.read_csv('https://raw.githubusercontent.com/QuantEcon/lecture-python-programming/main/lectures/_static/lecture_specific/pandas/data/test_pwt.csv') +df = pd.read_csv('https://github.com/QuantEcon/data-lectures/raw/main/lectures/test_pwt.csv') type(df) ``` @@ -357,10 +357,10 @@ df.loc[complexCondition] La capacité d'effectuer des modifications dans les dataframes est importante pour générer un jeu de données propre en vue d'analyses futures. -**1.** Nous pouvons utiliser `df.where()` de manière pratique pour « conserver » les lignes que nous avons sélectionnées et remplacer les autres lignes par n'importe quelles autres valeurs +**1.** Nous pouvons utiliser `df.where()` de manière pratique pour « conserver » les lignes que nous avons sélectionnées et remplacer les autres lignes par `NaN` ```{code-cell} ipython3 -df.where(df.POP >= 20000, False) +df.where(df.POP >= 20000) ``` **2.** Nous pouvons simplement utiliser `.loc[]` pour spécifier la colonne que nous voulons modifier, et attribuer des valeurs @@ -388,7 +388,7 @@ df.apply(update_row, axis=1) ```{code-cell} ipython3 # Arrondit tous les nombres décimaux à 2 décimales -df.map(lambda x : round(x,2) if type(x)!=str else x) +df.map(lambda x : round(x,2) if not isinstance(x, str) else x) ``` **Application : Imputation des valeurs manquantes** @@ -411,8 +411,8 @@ Nous pouvons utiliser à nouveau la méthode `.map()` pour remplacer toutes les ```{code-cell} ipython3 # remplace toutes les valeurs NaN par 0 def replace_nan(x): - if type(x)!=str: - return 0 if np.isnan(x) else x + if not isinstance(x, str): + return 0 if pd.isna(x) else x else: return x @@ -812,4 +812,4 @@ plt.tight_layout() ```{solution-end} ``` -[^mung]: Wikipédia définit le « munging » comme le nettoyage de données d'une forme brute vers une forme structurée et épurée. \ No newline at end of file +[^mung]: Wikipédia définit le « munging » comme le nettoyage de données d'une forme brute vers une forme structurée et épurée. From 34bfa1abea548c52ef3f50430d3a244f2391636b Mon Sep 17 00:00:00 2001 From: Matt McKay Date: Tue, 18 Aug 2026 13:13:50 +1000 Subject: [PATCH 2/4] Update translation: .translate/state/pandas.md.yml --- .translate/state/pandas.md.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.translate/state/pandas.md.yml b/.translate/state/pandas.md.yml index 56e1f5e..322727c 100644 --- a/.translate/state/pandas.md.yml +++ b/.translate/state/pandas.md.yml @@ -1,6 +1,6 @@ -source-sha: 02e57a5befc2a9a081019edc748aba15e4b2f02a -synced-at: "2026-07-14" -model: claude-opus-4-8 -mode: NEW +source-sha: 55c87c9fdbdb522866c5b6bbdc65c073941d7f16 +synced-at: "2026-08-18" +model: claude-sonnet-5 +mode: UPDATE section-count: 5 -tool-version: 0.15.0 +tool-version: 0.26.0 From 361fdc98d0b33876b68c65649a9436b960e5da39 Mon Sep 17 00:00:00 2001 From: Matt McKay Date: Tue, 18 Aug 2026 13:13:51 +1000 Subject: [PATCH 3/4] Update translation: lectures/polars.md --- lectures/polars.md | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/lectures/polars.md b/lectures/polars.md index 67720f0..d8f63b0 100644 --- a/lectures/polars.md +++ b/lectures/polars.md @@ -174,9 +174,7 @@ Comme dans {doc}`pandas`, travaillons avec les données des [Penn World Tables]( Nous les lisons à l'aide de `pl.read_csv` ```{code-cell} ipython3 -url = ('https://raw.githubusercontent.com/QuantEcon/' - 'lecture-python-programming/main/lectures/_static/' - 'lecture_specific/pandas/data/test_pwt.csv') +url = 'https://github.com/QuantEcon/data-lectures/raw/main/lectures/test_pwt.csv' df = pl.read_csv(url) df ``` @@ -360,9 +358,7 @@ Au lieu d'exécuter chaque opération immédiatement, le mode paresseux collecte ```{code-cell} ipython3 # Rechargement du jeu de données -url = ('https://raw.githubusercontent.com/QuantEcon/' - 'lecture-python-programming/main/lectures/_static/' - 'lecture_specific/pandas/data/test_pwt.csv') +url = 'https://github.com/QuantEcon/data-lectures/raw/main/lectures/test_pwt.csv' df_full = pl.read_csv(url) ``` @@ -438,9 +434,7 @@ import pandas as pd import time # Petit jeu de données -- Penn World Tables (~8 lignes) -url = ('https://raw.githubusercontent.com/QuantEcon/' - 'lecture-python-programming/main/lectures/_static/' - 'lecture_specific/pandas/data/test_pwt.csv') +url = 'https://github.com/QuantEcon/data-lectures/raw/main/lectures/test_pwt.csv' small_pd = pd.read_csv(url) small_pl = pl.read_csv(url) ``` @@ -480,13 +474,13 @@ une moyenne pondérée groupée. ```{code-cell} ipython3 n = 5_000_000 -np.random.seed(42) +rng = np.random.default_rng(42) -groups = np.random.choice(['A', 'B', 'C', 'D'], n) -values = np.random.randn(n) -weights = np.random.rand(n) -extra1 = np.random.randn(n) -extra2 = np.random.randn(n) +groups = rng.choice(['A', 'B', 'C', 'D'], n) +values = rng.standard_normal(n) +weights = rng.random(n) +extra1 = rng.standard_normal(n) +extra2 = rng.standard_normal(n) big_pd = pd.DataFrame({ 'group': groups, 'value': values, From 0ce4dfe70b95eace2672f3aa08b6d0927942333a Mon Sep 17 00:00:00 2001 From: Matt McKay Date: Tue, 18 Aug 2026 13:13:52 +1000 Subject: [PATCH 4/4] Update translation: .translate/state/polars.md.yml --- .translate/state/polars.md.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.translate/state/polars.md.yml b/.translate/state/polars.md.yml index a91ee7a..81b3af0 100644 --- a/.translate/state/polars.md.yml +++ b/.translate/state/polars.md.yml @@ -1,6 +1,6 @@ -source-sha: fb389e7722b4f70fce7835bd773df8eea2de9744 -synced-at: "2026-08-04" +source-sha: 55c87c9fdbdb522866c5b6bbdc65c073941d7f16 +synced-at: "2026-08-18" model: claude-sonnet-5 mode: UPDATE section-count: 6 -tool-version: 0.24.0 +tool-version: 0.26.0