엔트리와 함께하는 인공지능 교실 > Chapter 8. 엔트리 데이터 분석

[Session 01] 날씨 데이터를 분석해보자!

 

 날씨 데이터를 분석해보자!

학습 목표 

엔트리에서 제공하는 공공데이터를 분석하는 프로젝트를 만들 수 있다.

문제 해결 상황

서울, 부산, 제주의 평균 미세먼지농도와 평균 기온을 비교하고 차트를 통해 확인하고 싶어요. 그리고 오늘 날씨 확인을 통해 창문을 열어도 되는지, 에어컨을 켜야 하는지 알아보고 싶어요.

  

  

문제 해결 방법 

엔트리에서 제공하는 월평균 미세먼지 농도 데이터와 월평균 기온 데이터를 이용해서 서울, 부산, 제주 지역의 데이터를 차트로 나타내고 지역별 평균값을 비교한다. 날씨 확장 블록의 현재 미세먼지 농도와 기온을 이용해서 창문과 에어컨의 설정을 결정한다.



 1-1 테이블과 차트 만들기

엔트리에서 제공하는 다양한 데이터 중 월평균 미세먼지농도와 월평균 기온 데이터를 이용해서 테이블과 차트를 만들어보자.

 

1) ‘데이터분석’ 카테고리를 클릭한 후 ‘데이터 불러오기’ 버튼을 누른다.


2) ‘테이블 추가하기’ 버튼을 누르면 엔트리에서 제공하는 다양한 데이터 세트를 확인할 수 있다. 이 중 ‘월 평균 미세먼지 농도’를 선택한 후 ‘추가’ 버튼을 누른다.


 

3) ‘2010년부터 2019년까지의 지역별 미세먼지농도 정보인 ’월평균 미세먼지농도‘ 테이블이 추가된다.


 

4) '정보' 버튼을 클릭하면 이 데이터에 대한 정보를 확인할 수 있다.


 

5) ‘차트’ 버튼을 클릭한 후 ‘+’ 버튼을 누르면 막대, 선, 원 등 차트를 선택할 수 있다. 서울, 부산, 제주의 미세먼지농도 변화를 확인하기 위해 ‘선’을 선택한다.


 

6) 가로축에서 ‘월’을 선택하고, 계열에서 ‘부산광역시’, ‘서울특별시’, ‘제주특별자치도’를 선택한다. 차트 이름을 ‘월평균 미세먼지농도차트’로 변경하고 ‘저장하기’ 버튼을 클릭한다.


 

7) 차트를 보고 알게 된 정보를 적어보자.


 

8) 월평균 기온 데이터를 가져오기 위해 ‘테이블 추가하기’ 버튼을 눌러 ‘월평균 기온’ 테이블을 가져온다.


 

9) 차트’ 버튼을 클릭한 후 ‘+’ 버튼을 ‘막대’를 선택한다. 가로축에서 ‘월’을, 계열에서 ‘부산광역시’, ‘서울 특별시’, ‘제주도’를 선택하고, 이름을 ‘월평균기온차트’로 변경한다.


 

10) 차트를 보고 알게 된 정보를 적어보자.


 

11) 오른쪽 위에 위치한 ‘저장하기’ 버튼을 누르고 화면 왼쪽 위에 위치한 ‘×’ 버튼을 눌러 테이블 불어오기 창을 닫는다. ‘데이터분석’ 카테고리에 데이터 분석과 관련된 블록들이 새롭게 생성된 것을 확인할 수 있다.


 


 1-2 날씨 기능과 읽어주기 기능 불러오기

현재 날씨 정보를 확인하는 기능과 음성으로 읽어주는 기능을 가지고 오자.

 

1) ‘확장’ 카테고리를 클릭한 후 ‘확장 블록 불러오기’ 버튼을 누른다.


2) 확장 블록에는 날씨, 생활안전 국민행동요령 등이 있는데, 이 중 ‘날씨’를 선택한 후 ‘추가’ 버튼을 누른다.


 

 

3) ‘확장’ 카테고리에 날씨와 관련된 블록들이 새롭게 추가된다.


4) ‘인공지능’ 카테고리를 클릭한 후 ‘인공지능 블록 불러오기’ 버튼을 누른다. ‘읽어주기’를 선택한 후 ‘추가’ 버튼을 눌러 읽어주기와 관련된 블록들을 가져온다.


 


 1-3 엔트리 프로그래밍

지역별 미세먼지 농도와 기온을 비교하고 차트를 보여준다. 그리고 현재 미세먼지 농도와 기온에 따라 다른 동작을 하는 프로그램을 만들어보자.

 

1) 방(3)’ 오브젝트를 불러와서 벽에 위치한 창문과 그림 등을 삭제한다.


2) ‘검색창’ 오브젝트를 2개 불러와서 각각에 ‘과거 날씨’와 ‘오늘의 날씨’를 입력한다.

3) ‘어린이(2)’, ‘에어컨’, ‘창문’ 오브젝트를 불러와서 적절하게 배치한다.


4) ‘어린이(2)’를 선택한다. 시작하기 버튼을 클릭하면 ‘원하는 검색창을 클릭해봐!’를 말한다.


 

 

5) ‘과거 날씨’가 적힌 검색창으로 이동한다. 오브젝트를 클릭하면 ‘과거날씨알려줘’ 신호를 보낸다.


 

6) ‘오늘의 날씨’가 적힌 검색창으로 이동한다. 오브젝트를 클릭하면 ‘오늘날씨알려줘’ 신호를 보낸다.


7) ‘어린이(2)’로 이동한다. ‘과거날씨알려줘’ 신호를 받으면 ‘월평균 미세먼지농도차트’를 5초 동안 보여준다. 테이블, 차트와 관련된 블록은 ‘데이터분석’ 카테고리에 있다.


 

8) 서울특별시, 부산광역시, 제주특별자치도 미세먼지농도 평균 값 각각을 ‘서울’, ‘부산’, ‘제주’ 변수에 저장하고, 이 값을 말한다.


 

9) ‘서울’, ‘부산’, ‘제주’ 변수 값 비교를 통해 세 도시 중 미세먼지농도가 가장 낮은 도시 이름을 말한다. 미세먼지농도가 같은 경우는 고려하지 않았다.


 

10) ‘월평균 기온차트’를 보여주고, 각 도시의 기온 평균을 말한다.


 

11) 세 도시 중 평균 기온이 가장 높은 도시 이름을 말한다. 여기서도 평균 기온이 같은 경우는 고려하지 않았다.


 

12) ‘오늘날씨알려줘’를 신호를 받으면 현재 서울의 기온과 미세먼지농도를 말한다. ‘텍스트’ 변수에 말할 내용이 저장된다. 현재 날씨와 관련된 블록은 ‘확장’ 카테고리에 있다.


 

13) 현재 서울의 미세먼지 등급이 좋음이거나 보통이면 ‘미세먼지 농도가 낮아 창문 열어줘’를 읽어주고 ‘창문열기’ 신호를 보내고, 그렇지 않으면 ‘미세먼지 농도가 높아 창문 닫아줘’를 읽어주고 ‘창문닫기’ 신호를 보낸다.


 

14) 현재 서울의 기온이 25도 이상이면 ‘더워! 창문 닫고 에어컨 틀어줘’를 읽어주고 ‘창문닫기기’와 ‘에어컨 틀기’ 신호를 보내고, 그렇지 않으면 ‘덥지 않으니 에어컨 꺼줘’를 읽어주고 ‘에어컨끄기’ 신호를 보낸다.


 

 

15) ‘창문’ 오브젝트로 이동한다. 시작하기 버튼을 클릭하면 모양을 ‘창문_열림’으로 변경하고, ‘창문열기’ 신호를 받으면 모양을 ‘창문_열림’으로, ‘창문닫기’ 신호를 받으면 모양을 ‘창문_ 닫힘’으로 변경한다.

 

 

 

 


 

16) ‘에어컨’ 오브젝트로 이동한다. 시작하기 버튼을 클릭하면 모양을 ‘에어컨_꺼짐’으로 변경하고, ‘에어컨틀기’ 신호를 받으면 모양을 ‘에어컨_켜짐’으로, ‘에어컨끄기’ 신호를 받으면 모양을 ‘에어컨_꺼짐’으로 변경한다.

 

 

 

 


17) 완성된 프로젝트를 실행시켜 결과를 확인해보고 알게 된 정보를 적어보자.



18) 개선되거나 추가되었으면 하는 기능을 적어보고 프로젝트에 반영해보자.

엔트리에서 제공하는 공공 데이터를 분석하는 방법을 살펴보았다. 엔트리에서 제공하는 데이터를 분석하는 새로운 프로젝트를 제작하고 공유하는 시간을 가져보자.