Підрахунок у групах
У попередніх вправах ви вибирали дані з таблиць, а потім підсумовували отримані датафрейми в pandas, щоб побудувати графіки. Використовуючи COUNT і GROUP BY у SQL-запиті, ми можемо отримати ці підсумкові показники безпосередньо з бази даних.
У таблиці hpd311calls є стовпець complaint_type, який класифікує записи дзвінків за проблемою, наприклад, опалення чи сантехніка. Щоб побудувати графік обсягів дзвінків за типом проблеми, ви напишете SQL-запит, який COUNT підрахує записи за типом звернення.
pandas імпортовано як pd, а рушій бази даних для data.db створено як engine.
Ця вправа є частиною курсу
Оптимізоване завантаження даних із pandas
Інструкції до вправи
- Створіть SQL-запит, який отримує стовпець
complaint_typeі підрахунок усіх записів зhpd311calls, згрупованих заcomplaint_type. - Створіть датафрейм за допомогою
read_sql()із підрахунками дзвінків за проблемами —calls_by_issue. - Запустіть останній блок коду, щоб побудувати графік кількості дзвінків для кожної житлової проблеми.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Create query to get call counts by complaint_type
query = """
____ ____,
____(*)
FROM hpd311calls
____ ____;
"""
# Create dataframe of call counts by issue
calls_by_issue = pd.read_sql(____, ____)
# Graph the number of calls for each housing issue
calls_by_issue.plot.barh(x="complaint_type")
plt.show()