НачатьНачать бесплатно

Группировка и перекодирование значений

В таблице evanston311.category почти 150 различных значений. Некоторые из них похожи и имеют вид «Основная категория - Детали». Чтобы лучше понять, какие запросы встречаются чаще всего, удобно агрегировать данные по основной категории.

Для этого создайте временную таблицу recode, которая сопоставляет уникальные значения category с новыми, standardized (стандартизированными) значениями. В качестве стандартизированного значения используйте часть категории, стоящую до тире ('-'). Извлечь её можно с помощью функции split_part():

split_part(string text, delimiter text, field int)

Потребуется также дополнительная очистка нескольких значений, которые не вписываются в этот шаблон.

После этого таблицу evanston311 можно соединить с recode, чтобы сгруппировать запросы по новым стандартизированным значениям категорий.

Это упражнение является частью курса

Разведочный анализ данных в SQL

Посмотреть курс

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

-- 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%';
Редактировать и запускать код