Devoirs
Un devoir à rendre entre chaque séance ; je corrige et je note au fil de l'eau.
- DevoirD1 — Damier, escaliers & pixel artDamier et escaliers avec arange/reshape et le slicing à pas, puis une image (H, W, 3) en uint8 : pixel art avec np.repeat, niveaux de gris, seuil et imsave.Durée visée : 1 h 30Donné enS1À rendre pourSujetTélécharger
- DevoirD2 — Monte-Carlo & MandelbrotTirages vectorisés, masques et cumsum pour estimer pi par Monte-Carlo et simuler une marche aléatoire, puis Mandelbrot par broadcasting sur une grille complexe, imshow et une courbe log-log. Vous avez deux semaines pour le rendre.Durée visée : 2 h 30Donné enS2À rendre pourSujetTélécharger
- DevoirD3 — TP marathonLes résultats d'un marathon : read_csv avec sep et names, recherches, sélections loc/iloc, agrégats, puis les durées avec to_timedelta et l'accesseur .dt.Durée visée : 1 h 30Donné enS3À rendre pourSujetTélécharger
- DevoirD4 — L'énergie par régiongroupby et pivot_table sur la production d'énergie par région, barres empilées, merge avec la population, classes avec pd.cut et export CSV.Durée visée : 1 h 30Donné enS4À rendre pourSujetTélécharger
niveau secret B1 — Sokoban : un jeu dans un tableau
Le jeu de Sokoban en couches booléennes : lire un niveau, le dessiner, jouer un coup sans jamais modifier l'état reçu (vues, copies), puis un solveur par parcours en largeur et, en bonus, les coins morts par slicing.
Ce sujet n'est pas un devoir : rien n'est obligatoire, et un rendu complet ne peut que faire monter votre note de contrôle continu. Il prolonge la séance 1.
Durée visée 2 h, à rendre pour le .
À rendre dans B1/sujet.ipynb, sur votre dépôt pe-homework, avec ses PNG à côté et toutes les cellules exécutées.
niveau secret B2 — Le jeu de la vie
Les automates cellulaires de Wolfram puis le jeu de la vie de Conway, sans boucle sur les cases : np.roll, masques, agrégations sur plusieurs axes, périodes des oscillateurs, boucles contre vectorisation au chronomètre et, en bonus, les 256 règles d'un coup par broadcasting.
Ce sujet n'est pas un devoir : rien n'est obligatoire, et un rendu complet ne peut que faire monter votre note de contrôle continu. Il prolonge la séance 2.
Durée visée 2 h 30, à rendre pour le .
À rendre dans B2/sujet.ipynb, sur votre dépôt pe-homework, avec ses PNG à côté et toutes les cellules exécutées.
niveau secret B3 — La France en 35 000 lignes
Les 34 969 communes françaises dans une table : read_csv et ses pièges (le code postal 01400 devenu 1400.0), l'index INSEE, loc et iloc, les NaN, l'accesseur .str sur les noms (le plus long, les Saint-, les homonymes), densités et villages morts pour la France, puis la carte de France dessinée par 35 000 points et deux centres du pays calculés à la main.
Ce sujet n'est pas un devoir : rien n'est obligatoire, et un rendu complet ne peut que faire monter votre note de contrôle continu. Il prolonge la séance 3.
Durée visée 2 h 30, à rendre pour le .
À rendre dans B3/sujet.ipynb, sur votre dépôt pe-homework, avec ses PNG à côté et toutes les cellules exécutées.
Télécharger le sujet (B3-la-france-en-lignes.zip)Comment rendre
niveau secret B4 — La guerre des consoles
16 598 jeux vidéo et leurs ventes sur quatre marchés (VGChartz, 1980-2016) : trier sans perdre l'index, groupby et agg par genre, éditeur, année et région (le Japon et le jeu de rôle), pd.cut en décennies, pivot_table contre groupby + unstack, une table de plateformes à compléter à la main et à concaténer, trois merge dont un qui perd 984 lignes en silence, et le verdict Sony contre Nintendo ; bonus : franchises par .str.contains, jeux sortis avant leur console.
Ce sujet n'est pas un devoir : rien n'est obligatoire, et un rendu complet ne peut que faire monter votre note de contrôle continu. Il prolonge la séance 4.
Durée visée 2 h 30, à rendre pour le .
À rendre dans B4/sujet.ipynb, sur votre dépôt pe-homework, avec ses PNG à côté et toutes les cellules exécutées.
Télécharger le sujet (B4-guerre-des-consoles.zip)Comment rendre
Règles communes
- Le sujet se télécharge ici, se dézippe à la racine de votre dépôt
pe-homeworket arrive déjà dans le bon dossier (D1/,D2/…). Vous travaillez dedans, avec les figures (PNG) à côté du notebook ; son nom n'a pas d'importance. - Pensez à ré-exécuter toutes les cellules : faites un Restart & Run All avant de commiter. En effet, un notebook qui ne s'exécute pas de bout en bout coûte des points.
- Les docs et les notebooks du cours sont autorisés, et l'IA aussi, pour apprendre, mais vous devez pouvoir expliquer chaque ligne : au besoin, je peux vous demander une explication orale en séance.
- Une boucle Python là où une opération vectorisée était attendue coûte également des points : c'est tout l'objet du cours.
