열의 히스토그램
Coddy Machine Learning 여정의 데이터와 시각화 섹션에 포함된 레슨. 60개 중 50번째.
진료소에서 저녁 대기 시간이 아침 대기 시간보다 더 길까요? 하나의 좌표축에 표시한 두 개의 히스토그램으로 한눈에 확인할 수 있습니다:
열을 ax.hist에 바로 전달합니다. 각 그룹의 행을 유지한 다음, 두 그룹을 같은 축에 그립니다:
# waits에는 shift와 minutes 열이 있습니다
morning = waits[waits["shift"] == "morning"]
evening = waits[waits["shift"] == "evening"]
fig, ax = plt.subplots()
ax.hist(morning["minutes"], bins=4, alpha=0.5, label="morning")
ax.hist(evening["minutes"], bins=4, alpha=0.5, label="evening")
ax.set_title("Clinic Waits")
ax.set_xlabel("Minutes")
ax.legend()
plt.show()alpha=0.5는 막대를 반투명하게 만들어(0은 보이지 않고, 1은 불투명함) 겹치는 부분도 계속 보이게 합니다. label=은 범례에 표시할 각 막대의 이름을 지정합니다.
그룹이 서로 다른 범위에 걸쳐 분포하면, 해당 열은 모델이 그룹을 구분하는 데 도움이 됩니다.
챌린지
중급한 사무실에서 직원들에게 출근하는 데 얼마나 걸리는지 물었습니다. commute.csv에는 mode(bike 또는 bus)와 minutes가 있습니다. 어느 쪽의 소요 시간이 더 넓게 퍼져 있을까요? 시작 코드는 각 그룹을 bike와 bus에 저장하고 차트의 틀을 만듭니다.
각 그룹의 minutes에 대해 bins=5, alpha=0.5를 사용하고 레이블은 bike 또는 bus로 지정해 히스토그램을 그리세요.
작년 설문 결과를 바탕으로 한 아래 차트처럼 보여야 합니다.
막대가 더 많은 분 범위에 걸쳐 있는 그룹이 더 넓게 퍼져 있습니다. Coddy가 출력에서 차트를 설명합니다.
직접 해보기
import pandas as pd
import matplotlib.pyplot as plt
trips = pd.read_csv("commute.csv")
bike = trips[trips["mode"] == "bike"]
bus = trips[trips["mode"] == "bus"]
fig, ax = plt.subplots()
ax.set_title("Commute Times")
ax.set_xlabel("Minutes")
# 아래에 코드를 작성하세요
# 아래 줄은 변경하지 마세요
ax.legend()
plt.show()
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
데이터와 시각화의 모든 레슨
직접 연습해 보세요: 온라인 Python 컴파일러