Bắt đầu ngayBắt đầu miễn phí

Đếm theo nhóm

Ở các bài trước, bạn truy xuất dữ liệu từ các bảng rồi tóm tắt các dataframe kết quả trong pandas để vẽ biểu đồ. Bằng cách dùng COUNTGROUP BY trong một truy vấn SQL, chúng ta có thể lấy trực tiếp các con số tóm tắt đó từ cơ sở dữ liệu.

Bảng hpd311calls có một cột complaint_type phân loại các bản ghi cuộc gọi theo vấn đề, như sưởi ấm hoặc hệ thống ống nước. Để vẽ biểu đồ số lượng cuộc gọi theo từng vấn đề, bạn sẽ viết một truy vấn SQL để COUNT số bản ghi theo loại khiếu nại.

pandas đã được import với bí danh pd, và engine cơ sở dữ liệu cho data.db đã được tạo là engine.

Bài tập này là một phần của khóa học

Nạp dữ liệu gọn nhẹ với pandas

Xem khóa học

Hướng dẫn bài tập

  • Tạo một truy vấn SQL lấy cột complaint_type và số lượng tất cả bản ghi từ hpd311calls, được nhóm theo complaint_type.
  • Tạo một dataframe với read_sql() về số lượng cuộc gọi theo vấn đề, đặt tên là calls_by_issue.
  • Chạy phần cuối của mã để vẽ số lượng cuộc gọi cho từng vấn đề nhà ở.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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()
Chỉnh sửa và Chạy Mã