Zacznij terazZacznij za darmo

Grupowanie i przekodowywanie wartości

Tabela evanston311.category zawiera prawie 150 różnych wartości. Niektóre kategorie są jednak podobne i mają postać „Kategoria główna – Szczegóły". Żeby lepiej zorientować się, jakie zgłoszenia są najczęstsze, warto zagregować dane według kategorii głównej.

W tym celu utwórz tymczasową tabelę recode, która przypisze każdej unikalnej wartości category nową, standardized (ustandaryzowaną) wartość. Jako wartości standardized użyj części nazwy kategorii znajdującej się przed myślnikiem ('-'). Wyodrębnisz ją za pomocą funkcji split_part():

split_part(string text, delimiter text, field int)

Konieczne będzie też dodatkowe porządkowanie kilku przypadków, które nie pasują do tego wzorca.

Następnie połącz tabelę evanston311 z tabelą recode, aby pogrupować zgłoszenia według nowych, ustandaryzowanych wartości kategorii.

To ćwiczenie jest częścią kursu

Eksploracyjna analiza danych w SQL

Zobacz kurs

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

-- 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%';
Edytuj i uruchom kod