CommencerCommencer gratuitement

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

Afficher le cours

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%';
Modifier et exécuter le code