Werte gruppieren und umkodieren
Es gibt fast 150 verschiedene eindeutige Werte für evanston311.category
. Aber einige dieser Kategorien sind ähnlich, mit der Form „Hauptkategorie - Details“. Wir bekommen einen besseren Überblick über die häufigsten Anfragen, wenn wir sie nach der Hauptkategorie zusammenfassen.
Dazu erstellst du eine temporäre Tabelle recode
, die eindeutige Werte von category
auf neue Werte von standardized
abbildet. Mache die standardized
-Werte zum Teil der Kategorie vor einem Bindestrich ('-'
). Extrahiere diesen Wert mit der Funktion split_part()
:
split_part(string text, delimiter text, field int)
Außerdem musst du ein paar Fälle bereinigen, die nicht in dieses Muster passen.
Dann kann die Tabelle evanston311
mit recode
verknüpft werden, um die Anfragen nach den neuen Werten der Kategorie standardized
zu gruppieren.
Diese Übung ist Teil des Kurses
Explorative Datenanalyse in SQL
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
-- 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%';