french_rev: Data Sources lists 3 of the 5 datasets, and a stray DataFrame renders above fr_fig3
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 74/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Tranquilla
- Stack tecnologico
- jupyter-notebook, pandas, python
- Ambito
- documentation
Direzione di ricerca
Inizia da lectures/french_rev.md:57-62 e dalla sezione identica di lecture-wasm/lectures/french_rev.md, quindi esamina le celle di caricamento dei dati a :711-714 e la cella che termina con data1.replace(..., inplace=True). Aggiungi i link a caron.npy e nom_balances.npy in entrambe le liste delle sorgenti, aggiorna l’espressione replace e renderizza il notebook pubblicato per confermare che sopra fr_fig3 non compaia alcuna tabella.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Two independent reader-facing defects on the published french_rev page, both found while validating QuantEcon/data-lectures#51 by rendering the live page and running the published notebook. Neither was introduced by the data migration; the first was made more visible by it.
1. Data Sources documents three of the five datasets the lecture reads
lectures/french_rev.md:59 says "This lecture uses data from three spreadsheets assembled by {cite}sargent_velde1995" and lists fig_3.xlsx, dette.xlsx and assignat.xlsx at :60-62.
The lecture actually reads five files. caron.npy and nom_balances.npy are fetched from the same base_url at :711-714 and are named nowhere outside code cells — a case-insensitive grep of the whole file for caron|nom_balances|\.npy returns 6 hits, all of them code.
Nine of the eighteen published figures derive entirely from those two files (fr_fig104 and its five variants, plus the three exercise-solution figures). So half the lecture's figures rest on sources a reader cannot click through to, in a section whose whole purpose is provenance.
Being fair about it: this is pre-existing documentation debt, not a concealed inconsistency. Both manifests state the gap explicitly in their header comments, and CATALOG.md publicly lists this lecture as a consumer of both .npy files. But 6986e35a (#826) rewrote exactly those three bullets in place to repoint them, which was the natural moment to add the other two — and the validation checklist for that work described them as "the three Data Sources links", encoding the gap rather than catching it.
lecture-wasm/lectures/french_rev.md:57-62 is identical and needs the same fix.
2. A stray 30-row DataFrame renders above fr_fig3
The published page renders an uncaptioned 30-row DataFrame table as the output of the data1.replace(0, np.nan, inplace=True) cell, immediately above the fr_fig3 figure. Confirmed reader-visible in a headless browser: table.dataframe, visible, 1117 px tall, 30 tbody rows, not collapsed.
The cause is a pandas 3 behaviour change, not anything the migration did. In pandas 3.0.3 — the version the live build used, per the publish run's conda log — DataFrame.replace(..., inplace=True) executes return self rather than returning None, so Jupyter renders the cell's last expression. The mutation still applies correctly (NaNs applied = 2), so no figure and no number is wrong. Purely cosmetic.
It is a genuine regression rather than long-standing: the 2026-03-09 archived copy of this page has class="dataframe" ×0, and the anaconda 2026.07 bump (#797, 2026-07-20) predates the migration.
The blast radius is narrower than "every inplace=True idiom", which is worth stating so this doesn't turn into a large sweep. In pandas 3.0.3, only replace, fillna and interpolate return self; dropna, set_index, reset_index, sort_values and rename still correctly return None. So only cells whose last statement is an inplace replace/fillna/interpolate are affected.
Simplest fix here is data1 = data1.replace(0, np.nan), which is also the form pandas is steering toward.
- Lingua principale
- Jupyter Notebook
- Stelle
- 65
- Fork
- 31
- Merge medio
- 2g 15h
- PR unite (30g)
- 11
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di QuantEcon/lecture-python-intro
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
QuantEcon/lecture-python-intro#851 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
QuantEcon/lecture-python-intro#835 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
QuantEcon/lecture-python-intro#808 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
QuantEcon/lecture-python-intro#800 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
QuantEcon/lecture-python-intro#796 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di QuantEcon/lecture-python-intro
Issue simili
-
triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
Portkey-AI/gateway#1844 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
XRPLF/xrpl-dev-portal#4000 ·
I maintainer di solito rispondono entro 1 giorno
-
docs: clarify replacement for outdated Terms of Service URL in readme.mdForse già presa @mohitjoshi-hey l’ha presa oggi. Aperta
Difficoltà 1/5 1-3 ore Idoneità per principianti 66/100
-
documentation good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno
-
good first issue hacktoberfest pipeline
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
TanbirRamim/open-source-radar#111 ·
I maintainer di solito rispondono entro 1 giorno