통근 수단별 이동 시간 히트맵
이 연습 문제에서는 통근 시간(분)과 이동 수단을 비교하는 전국 단위 데이터의 히트맵을 만듭니다. 시작 시점에는 JSON API 응답 객체의 단일 데이터 행에서 추출한 값 목록 data_row가 주어집니다. 이동 modes(5)와 통근 times(9) 목록이 생성되어 콘솔에 출력되어 있습니다. 단일 데이터 행을 리스트의 리스트 형태로 재구성하고, sns.heatmap에 전달할 수 있는 DataFrame을 만든 뒤, 히트맵을 생성해야 합니다.
데이터 행에는 5가지 이동 수단에 대한 데이터가 있으며, 각 수단마다 9개의 통근 시간이 한 묶음으로 제공됩니다. 한 번의 반복(iteration)은 통근 시간 세트 전체를 의미합니다.
pandas와 seaborn은 일반적으로 사용하는 별칭으로 로드되어 있습니다.
이 연습은 강의의 일부입니다
Python으로 미국 인구조사 데이터 분석하기
연습 안내
iter_len을times목록의 길이로 설정하세요.- 리스트 컴프리헨션에서 시작값 0, 종료값은
data_row의 길이, 간격은iter_len인 범위를 생성하세요. - 첫 번째 인수로
commutingDataFrame을 사용해 히트맵을 만들고, 통근자 수를 천 단위로 주석(annotate)으로 표시하세요(정수 나눗셈으로1000으로 나누세요).
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Set iter_len to the number of commute times
iter_len = ____
# Break row into list of lists by travel mode
data = [data_row[i:i+iter_len] for i in range(____)]
# Create DataFrame, set data type to int
commuting = pd.DataFrame(data=data, index=modes, columns=times)
commuting = commuting.astype(int)
# Create heatmap of commuters by mode by income
sns.heatmap(____, annot=____, fmt = "d", cmap="YlGnBu")
plt.xticks(rotation = 50)
plt.yticks(rotation = 50)
plt.show()