Regrouper et recoder les valeurs
Il existe près de 150 valeurs distinctes de evanston311.category
. Mais certaines de ces catégories sont similaires, avec la forme « Catégorie principale - Détails ». Nous pouvons avoir une meilleure idée des demandes les plus courantes en les regroupant par catégorie principale.
Pour ce faire, créez une table temporaire recode
mettant en correspondance les valeurs distinctes de category
avec les nouvelles valeurs de standardized
. Faites des valeurs standardisées (standardized
) la partie de la catégorie précédée d'un tiret ('-'
). Extrayez cette valeur à l'aide de la fonction split_part()
:
split_part(string text, delimiter text, field int)
Vous devrez également procéder à un nettoyage supplémentaire de quelques cas qui ne correspondent pas à ce modèle.
La table evanston311
peut ensuite être reliée à recode
pour regrouper les demandes en fonction des nouvelles valeurs de la catégorie standardized
.
Cet exercice fait partie du cours
Analyse exploratoire des données en SQL
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
-- Fill in the command below with the name of the temp table
DROP TABLE IF EXISTS ___;
-- Create and name the temporary table
CREATE ___ ___ ___ AS
-- Write the select query to generate the table with distinct values of category and standardized values
SELECT DISTINCT category,
___(___(___, ___, ___)) AS standardized
-- What table are you selecting the above values from?
FROM ___;
-- Look at a few values before the next step
SELECT DISTINCT standardized
FROM recode
WHERE standardized LIKE 'Trash%Cart'
OR standardized LIKE 'Snow%Removal%';