CommencezCommencez gratuitement

Regrouper et recoder des valeurs

Il existe près de 150 valeurs distinctes de evanston311.category. Mais certaines se ressemblent et suivent la forme « Main Category - Details ». Nous pouvons mieux voir quelles demandes sont les plus courantes si nous agrégeons par la catégorie principale.

Pour ce faire, créez une table temporaire recode qui associe les valeurs distinctes de category à de nouvelles valeurs standardized. Faites en sorte que les valeurs standardized correspondent à la partie de la catégorie avant un trait d'union ('-'). Extrayez cette valeur avec la fonction split_part() :

split_part(string text, delimiter text, field int)

Vous devrez aussi faire un peu de nettoyage additionnel pour quelques cas qui ne suivent pas ce modèle.

Ensuite, la table evanston311 pourra être liée à recode pour regrouper les demandes selon les nouvelles valeurs de catégorie standardized.

Cette activité fait partie du cours

Analyse exploratoire des données en SQL

Voir le cours

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

-- 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