मानों को समूहित करें और रीकोड करें
evanston311.category में लगभग 150 अलग-अलग मान हैं. लेकिन इनमें से कुछ कैटेगरी "Main Category - Details" फ़ॉर्म में एक-दूसरे से मिलती-जुलती हैं. अगर हम मुख्य कैटेगरी के आधार पर एग्रीगेट करें, तो हमें सबसे आम रिक्वेस्ट्स का बेहतर अंदाज़ा मिलेगा.
इसे करने के लिए, एक अस्थायी टेबल recode बनाएँ जो अलग-अलग category मानों को नए, standardized मानों से मैप करे. standardized मान वे हों जो डैश ('-') से पहले वाले हिस्से में आते हैं. यह मान split_part() फंक्शन से निकालें:
split_part(string text, delimiter text, field int)
आपको कुछ अतिरिक्त क्लीनअप भी करना होगा, क्योंकि कुछ केस इस पैटर्न में फिट नहीं बैठते.
इसके बाद evanston311 टेबल को recode से जॉइन करके रिक्वेस्ट्स को नए standardized कैटेगरी मानों के आधार पर समूहित किया जा सकता है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
SQL में Exploratory Data Analysis
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
-- 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%';