開始使用免費開始

分組計數

在前面的練習中,你先從資料表取出資料,再用 pandas 彙總成 dataframe 來繪圖。透過在 SQL 查詢中使用 COUNTGROUP BY,我們可以直接從資料庫取得這些彙總數字。

hpd311calls 資料表有一個欄位 complaint_type,用來依照問題類型(例如暖氣或管線)分類通報紀錄。為了依問題類型繪製通話量圖表,你將撰寫一個 SQL 查詢,依通報類型來 COUNT 紀錄數。

pandas 已以 pd 匯入,而且 data.db 的資料庫引擎已建立為 engine

本練習屬於課程

使用 pandas 的精實資料導入

檢視課程

練習說明

  • 撰寫一個 SQL 查詢,從 hpd311calls 取得 complaint_type 欄位,並計算所有紀錄的筆數,依 complaint_type 分組。
  • 使用 read_sql() 建立一個依問題類型計算通話次數的 dataframe,命名為 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()
編輯並執行程式碼