cours-snt/donnees_structurees/tp_decouverte_csv/sujet.tex

156 lines
6.5 KiB
TeX
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

\documentclass[11pt,a4paper]{../../template/template_cours}
\usepackage{listings}
\usepackage{minted}
\title{Introduction aux données structurées — Le format CSV}
\author{Adrian Amaglio}
\def\thesequence{Données structurées}
\begin{document}
Durée : 1h
% Retours: 
% Les élèves galèrent, ça ne les passionne pas, ils ont du mal à copier le CSV en ligne (il vaudrait mieux laisser tomber pandas et leur fournir le python complèt à télécharger).
% Il ny a rien à « faire » dans le TP, juste des copier-coller sans intérêt et de la réflexion. Ça doit être rageant de bloquer sur des copier-coller
% UPDATE :
% ---
\section{Préparation}
Faire chaque activité dans un nouveau dossier est une bonne pratique dans toutes les matières et en dehors du lycée.
Prenez lhabitude de bien organiser vos dossiers pour retrouver vos documents plus tard.
\begin{exercice}
Créez un dossier nomé « tp-csv » dans votre zone personnelle.
\\
Téléchargez-y le fichier à ladresse : \url{https://git.jean-cloud.net/adrian/cours-snt/raw/branch/master/donnees_structurees/tp_decouverte_csv/programme.py}.
\\
Ouvrez ce programme avec pyzo ou edupython.
\end{exercice}
%\begin{exercice}
% Dans ce dossier, téléchargez le fichier « noms.csv » disponible à cette adresse :
% \url{https://git.jean-cloud.net/adrian/cours-snt/raw/branch/master/donnees_structurees/tp_decouverte_csv/noms.csv}
%\end{exercice}
% ---
%\section{Découverte du format CSV}
%Un fichier CSV contient des données structurées.
%\begin{exercice}
% Ouvrez le fichier « noms.csv » avec un éditeur de texte (notepad++ ou bloc-note) puis ouvrez le avec le tableur libreoffice calc.\\
% Comparez le rendu dans les deux logiciels.
% Comment est structurée linformation ?
%\end{exercice}
% ---
%\section{Avec Python}
%Il est également possible décrire un programme Python qui lit un fichier CSV.
%\begin{exercice}
% Ouvrez léditeur de python à ladresse \url{https://www.online-python.com}.
% Créez un nouveau fichier « noms.csv » grâce au bouton « + » :
% \includegraphics[width=\textwidth]{screen_ide.png}
% Dans ce fichier CSV, insérez le contenu du fichier CSV précédent.
%\end{exercice}
%
%\begin{exercice}
% Sur votre IDE, dans le fichier python, supprimer le code et remplacez-le par le suivant :
% \begin{minted}{Python}
%import pandas
%noms=pandas.read_csv("noms.csv")
%print(noms)
% \end{minted}
% Vous éxécuterez ensuite votre programme à laide du bouton « run ».
% Vous devriez avoir un affichage similaire à celui-ci :\\
% \includegraphics[]{affichage_noms.png}
%\end{exercice}
%
%\begin{exercice}
% Ajoutez à votre programme la ligne suivante :
% \begin{minted}{Python}
%print(noms.loc[1,'prenom'])
% \end{minted}
% Que fait cette instruction ?
%\end{exercice}
%
%\begin{exercice}
% Modifiez votre programme pour quil affiche la date de naissance de Janelle Monáe du fichier « noms.csv ».
%\end{exercice}
% ---
Depuis quelques années, létat et les collectivités locales sont tenues de mettre des données relatives à leurs activités en libre accès.
Cette données sont dites « ouvertes » car libre daccès pour tous et toutes.
%\begin{exercice}
% Allez à ladresse suivante pour ouvrir un environnement python :\\\url{https://www.online-python.com}.
% \\Créez un nouveau fichier nommé exactement « centres-vaccination.csv » grâce au bouton « + » :
% \includegraphics[width=\textwidth]{screen_ide.png}
%\end{exercice}
\begin{exercice}
Rendez-vous à cette adresse :
\url{https://www.data.gouv.fr/fr/datasets/lieux-de-vaccination-contre-la-covid-19/}
\\Téléchargez le fichier CSV « centres-vaccination.csv » et copiez son contenu dans le fichier CSV « centres-vaccination.csv ».
\\Téléchargez la documentation de ce fichier, disponible sur la même page web, et essayez de comprendre la signification des trois premiers descripteurs.
\end{exercice}
Ce fichier CSV nutilise pas la virgule comme séparateur, car cest un caractère trop commun en français, il utilise le point virgule.
Avoir un séparateur dans un champs empêcherait un programme de le lire correctement, il aurait limpression quil y a plus de valeurs que prévu.
\begin{exercice}
En bas du fichier python que vous avez téléchargé, appellez la fonction « afficher\_descripteurs » comme suit :
\begin{minted}{python}
afficher_descripteurs()
\end{minted}
Vérifiez que vous avez bien une liste de champs qui saffiche comme sur lexemple suivant :
\includegraphics{liste_descripteurs.png}
\end{exercice}
%\begin{exercice}
% Pour lire ce nouveau fichier, copiez ces lignes de Python dans le fichier « main.py » de lenvironnement, en ayant supprimé son contenu avant.
% Puis exécutez le en cliquant sur « Run ».
% \begin{minted}{Python}
%import pandas
%centres=pandas.read_csv("centres-vaccination.csv", sep=";")
%print(centres)
% \end{minted}
%\end{exercice}
%Vous pouvez constater que laffichage est tronqué pour éviter denvahir lécran.
% ---
\section{Identifier un problème social}
\begin{exercice}
La ligne suivante permet de compter le nombre de valeurs renseignées pour chaque champs :
\begin{minted}{Python}
afficher_compte_colonnes()
\end{minted}
Quels sont les trois champs les moins renseignés ? Cela vous semble til normal ?
\end{exercice}
% ---
\section{Identifier les incohérences techniques}
% ---
\begin{exercice}
Remplacez votre affichage par le code suivant :
\begin{minted}{Python}
afficher_contenu_colonne('lieu_accessibilite')
\end{minted}
Il permet dafficher les différentes valeurs reseignées dans le champs « lieu\_accessibilite » et le nombre de fois quelles apparaissent dans le fichier CSV.
\\Selon vous, pourquoi les valeurs sont aussi hétérogènes ? Quelles valeurs devrait-on pouvoir trouver dans ce champs selon la documentation disponible avec le fichier CSV ?
\end{exercice}
\begin{exercice}
LURL suivante est extraite du fichier CSV et permet de réserver dans un centre de vaccination :
\\\url{https://partners.doctolib.fr/centre-depistage-covid/chateauroux/centre-de-vaccination-covid-ssr-chateauroux-36?speciality_id=5494&enable_cookies_consent=1}
\\Les paramètres qui sont passés à la page via cette url sont les suivants :
\\speciality\_id=5494
\\enable\_cookies\_consent=1
\\Que peut signifier le dernier paramètre ? Quelles implications peut-il avoir ?
\end{exercice}
\end{document}