오픈소스데이터분석 2025년 2학기 방송통신대 중간과제물)국토교통부 공동주택 에너지 사용 정보 Open API를 활용하여 다음의 지시에 따라 데이터를 수집하시오. Open API 시각화 등
본 자료는 3페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
해당 자료는 3페이지 까지만 미리보기를 제공합니다.
3페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

오픈소스데이터분석 2025년 2학기 방송통신대 중간과제물)국토교통부 공동주택 에너지 사용 정보 Open API를 활용하여 다음의 지시에 따라 데이터를 수집하시오. Open API 시각화 등에 대한 보고서 자료입니다.

목차

문 1. “국토교통부 공동주택 에너지 사용 정보” Open API를 활용하여 다음의 지시에 따라 데이터를 수집하시오. (10점)

문제 2. 수집한 데이터를 다음의 지시에 따라 분석에 적합한 형태로 변환하시오. (10점)

문제 3. 전처리된 데이터를 활용하여 다음의 지시에 따라 시각화하시오. (8점)

문제 4. 시각화 결과를 바탕으로 연도별 에너지 사용 총액 변화에서 나타나는 주요 트렌드를 찾아 분석하고, 그 원인을 추론하여 500자 정도로 설명하시오. (2점)

본문내용

ppend(item)
time.sleep(0.05)
else:
print(\"API 호출 실패\", \'\\r\', end=\'\')
② 실행 결과 캡처
문제 2. 수집한 데이터를 다음의 지시에 따라 분석에 적합한 형태로 변환하시오. (10점)
2-1. 수집한 JSON 형태의 데이터를 pandas DataFrame으로 변환하고, 데이터의 기본 정보를 출력하는 코드와 실행 결과를 첨부하시오. (4점)
# DataFrame 생성
df = pd.DataFrame(items)
# \'날짜\' 칼럼을 맨 앞으로 재배치
df.insert(0, \'날짜\', df.pop(\'날짜\'))
df.head(3)
2-2. 연도별, 계절별 분석을 위해 날짜 컬럼을 활용하여 ‘year’와 ‘season’ 컬럼을 추가하는 전처리 코드를 작성하고, 변환 결과를 확인할 수 있는 출력 결과를 첨부하시오.
※ 계절 구분: 봄(3-5월), 여름(6-8월), 가을(9-11월), 겨울(12-2월) (6점)
# year 칼럼 추가
df[\'year\'] = df[\'날짜\'].apply(lambda x: x[:4])
# season 변환 함수
def get_season(month):
if month in [3, 4, 5]:
return \'봄\'
elif month in [6, 7, 8]:
return \'여름\'
elif month in [9, 10, 11]:
return \'가을\'
else:
return \'겨울\'
# season 칼럼 추가
df[\'season\'] = df[\'날짜\'].apply(lambda x: int(x[-2:])).apply(get_season)
df.head(3)
문제 3. 전처리된 데이터를 활용하여 다음의 지시에 따라 시각화하시오. (8점)
3-1. 연도별 에너지 사용 총 금액(전기+가스+난방+급탕) 변화량을 선 그래프로 시각화하고, 그래프에 자신의 학번 뒤 4자리를 제목에 포함하여 저장하시오. (예: \"연도별 에너지 사용 총액 변화 - 1234\") 시각화 코드와 생성된 그래프를 첨부하시오. (4점)
# 그래프에 한글 깨쳐 나올 경우 대응책(나눔고딕 다운 및 https://geunuk.tistory.com/653 참고하여 해결)
# 네이버 글꼴 모음(https://hangeul.naver.com/font 에서 나눔고딕 다운하여 설치)
# https://geunuk.tistory.com/653
# 연도별 총 금액 계산
yearly_sum = df.groupby(\'year\')[[\'elect\', \'gas\', \'heat\', \'waterHot\']].sum().sum(axis=1)
# 판다스 선 그래프
ax = yearly_sum.plot(kind=\'line\', marker=\'o\', figsize=(10, 6),
title=\"연도별 에너지 사용 총액 변화 - 1234\")
ax.set_xlabel(\"연도\")
ax.set_ylabel(\"총 금액\")
3-2. 계절별 난방사용금액 평균을 막대 그래프로 시각화하고, 각 막대에 구체적인 수치를 표시하시오. 시각화 코드와 생성된 그래프를 첨부하시오. (4점)
# 계절별 난방 사용 금액 평균 계산
season_avg = df.groupby(\'season\')[\'heat\'].mean()
# 막대 그래프 시각화
# rot=0은 막대 그래프의 **x축 눈금 라벨 회전 각도(rotation)**를 지정하는 옵션
# 0으로 설정하지 않으면 x축 라벨(봄,여름, 가을, 겨울)이 90도 회전하여 보임
ax = season_avg.plot(kind=\'bar\', figsize=(8, 6), title=\"계절별 난방 사용 금액 평균\", rot=0)
# y축 라벨
ax.set_ylabel(\"평균 난방 금액\")
# 각 막대에 수치 표시
# ax.text(x좌표, y좌표, 문자열, ...)은 그래프 위 특정 위치에 글씨를 출력하는 함수
# 여기서 x좌표=i, y좌표=value이므로 각 막대의 꼭대기 위치에 텍스트가 찍히게 된다.
# f\"{value:.1f}\"는 소수점 첫째 자리까지 반올림해 문자열로 표시한다. 예: 123.456 → \"123.5\".
# ha=\'center\'는 가로 정렬(horizontal alignment)을 가운데로 맞춘다. 즉, 막대의 가운데 위에 글자가 위치한다.
# va=\'bottom\'은 세로 정렬(vertical alignment)을 아래쪽 기준으로 맞춘다. 즉, 글자가 막대 위에 딱 붙어서 표시된다.
# for은 모든 막대의 꼭대기 위치에 해당 막대의 값(평균 난방 금액)을 소수점 한 자리로 표시해 주는 역할을 한다.
for i, value in enumerate(season_avg):
ax.text(i, value, f\"{value:.1f}\", ha=\'center\', va=\'bottom\')
문제 4. 시각화 결과를 바탕으로 연도별 에너지 사용 총액 변화에서 나타나는 주요 트렌드를 찾아 분석하고, 그 원인을 추론하여 500자 정도로 설명하시오. (2점)
그래프를 보면 2015년부터 2019년까지는 연도별 에너지 사용 총액이 점차 하락하는 주체를 보인다. 이는 산업 생산 활동의 둔화와 겨울은 따뜻하고 여름은 덥지 않은 날씨로 인해 냉난방용 에너지 소비가 적었던 점을 들 수 있다. 또한 2020년에는 코로나19라는 예상치 못한 변수로 인해 산업 전반과 사람들의 생활 방식 등에 다양한 변화를 일으키며 에너지 소비 패턴에도 많은 변화를 가져왔다. 특히 코로나19의 확산으로 세계 각국이 대내외 봉쇄조치를 실시하고 이로 인해 경제 활동이 크게 위축되면서 자연스럽게 에너지 소비 감소에도 영향을 주었을 것이다. 그러나 펜데믹이 지나고 특히 2022년 2월 이후 러우전쟁의 영향으로 국제 유가와 천연가스 가격의 급등, 에너지 수급 불안정, 그리고 기후 변화로 인한 냉난방 수요 확대가 복합적으로 작용하면서 에너지 소비도 급증한 것으로 분석된다. 그리고 최근의 기후변화로 인해 여름의 폭염과 겨울의 한파가 심해지면서 냉난방 에너지 수요의 증가도 에너지 소비 증가에 큰 영향을 미쳤을 것으로 판단된다.
과제 스트레스 싹~ 학점 쑥!
https://www.happycampus.com/store/zzzyzyztusz/
  • 가격9,000
  • 페이지수11페이지
  • 등록일2025.09.08
  • 저작시기2025.09
  • 파일형식한글(hwp)
  • 자료번호#5253272
본 자료는 최근 2주간 다운받은 회원이 없습니다.
다운로드 장바구니