====== Introduction au nettoyage de données ======
L'objectif de ce TP est de faire face à quelques problèmes de qualité de données.
Pour ce TP on travaillera sur PostgreSQL (compte indiqué dans TOMUSS). Connexion avec ''psql'':
psql -h 192.168.77.4 -U compte_indique_dans_tomuss -d postgres
Ce TP est à rendre pour le **dimanche 21 octobre 2018** sous forme d'un rapport pdf contenant pour chaque type d'erreur:
* une explication du problème des moyens de le détecter et de le corriger;
* une ou plusieurs requêtes SQL pour détecter ce type d'erreur;
* une ou plusieurs requêtes SQL pour corriger ces erreurs.
Remarque: il est possible d'utiliser des tables temporaires lors de la correction des erreurs.
===== Import des données =====
Copier la table TIW2DATA.VINS dans votre compte:
CREATE TABLE VINS AS SELECT * FROM TIW2DATA.VINS;
Si vous travaillez sur une base sur votre propre machine, le script de création de la table et des données est disponible ici: {{ :enseignement:dataclean:vins-pg-2018.sql |vins-pg-2018.sql}}.
===== Analyse des données et correction =====
Afficher les données dans ''psql''.
:!: Dans le reste du TP toutes les questions doivent être répondues à l'aide de requêtes SQL les plus génériques possibles :!:
==== Données numériques ====
Certains types de données sont des type chaîne de caractères au lieu de données numériques.
-> Expliquer pourquoi et corriger le problème.
==== Emplacement de stockage ====
L'emplacement de stockage des bouteilles et leur décompte est stocké ans 3 attributs: LIEU, H et TOT: il y a 2 lieux de stockage: Valence et Lyon. TOT représente le nombre total de bouteilles et H représente, parmi ces bouteilles, le nombre qui on été remontées, les autres étant en cave.
-> ajouter deux attributs, NB_HAUT et NB_BAS et remplir leurs valeurs. On ne veut pas de valeur nulle.
==== Régions ====
L'appellation devrait déterminer la région.
-> Corriger les problèmes correspondants
==== Appellation manquante ====
On sait que deux vins ayant un même domaine et une même cuvée (lorsqu'elle est connue) ont la même appellation.
-> Compléter les appellations manquantes.
==== Données dupliquées ====
Trouver la clé de la table à la main, puis vérifier votre hypothèse à l'aide d'une requête SQL.
-> Éliminer les doublons.