Değerleri grupla ve yeniden kodla
evanston311.category alanında neredeyse 150 farklı değer var. Ancak bu kategorilerin bazıları "Ana Kategori - Detaylar" biçiminde birbirine benziyor. Ana kategoriye göre birleştirirsek, hangi taleplerin yaygın olduğunu daha iyi görebiliriz.
Bunu yapmak için, farklı category değerlerini yeni, standardized değerlere eşleyen geçici bir recode tablosu oluştur. standardized değerleri, kategorideki kısa çizgiden ('-') önceki kısmı yap. Bu değeri split_part() fonksiyonuyla çıkar:
split_part(string text, delimiter text, field int)
Ayrıca bu kalıba uymayan birkaç durum için ek temizlik yapman gerekecek.
Sonrasında evanston311 tablosu, talepleri yeni standardized kategori değerlerine göre gruplamak için recode ile birleştirilebilir.
Bu egzersiz
SQL ile Keşifsel Veri Analizi
kursunun bir parçasıdırUygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
-- 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%';