이번주차는 짧습니다. 학습날짜가 총 9월 25일부터 27일까지 진행되었으며 9월 29일이 추석인 관계로 28일부터 10월 3일까지 연휴기간이었습니다. 또한 27일에는 감기 몸살로 인해 수업을 불참해 학습에 관한 내용은 25-26일뿐 입니다.
Microsoft store
의 Ubuntu
앱과 wsl
의 환경을 이용했고 airflow
를 설치하고 예제 dag.py
파일을 작성한 후 실습하는 과정을 진행했습니다. 또한 "Binance(바이낸스)" - 암호화폐 거래소, 사이트를 크롤링한 데이터와 시계열 라이브러리를 이용해 비트코인 가격 예측을 하는 실습을 각각 진행했습니다.
Ubuntu
환경에 airflow_install.sh
파일을 이용해 설치하고 활용하는 학습을 진행했습니다.Docker(도커)
를 설치한 후airflow(에어플로우)
를 설치해localhost:8080
주소를 통해 에어플로우를 실행할 수 있었습니다.✅ Docker desktop 에서 확인한 컨테이너 실행 상태 이미지
dag01.py
, dag02.py
를 따로 작성하여 에어플로우 사이트에서 실행을 확인할 수 있었습니다.✅ task schedule 시간 형식 정하는 방법.
웹 크롤링과 시계열 라이브러리
를 이용해 비트코인 가격 예측을 하는 실습을 학습했습니다."바이낸스"
사이트의 API를 이용해requests
모듈을 이용해 "bitcoin"의 데이터를 수집했습니다.MySQL
에 저장했습니다.DataFrame
으로 옮긴 뒤prophet
모듈을 이용해 연간, 월간, 주간, 일간 등의 트렌드성을 반영 하고mean_squared_error 와 r2_score
함수를 통해 실제 값과 예측값의 차이를 확인했고✅ 실제값, 예측값, 예측 하한선-상한선을 시각화한 그래프
(검정-실제값, 빨강-예측값, 파랑-예측 하한선, 초록-예측 상한선)
VScode
에서 Remote SSH
확장 프로그램을 통해 위에서 활성화한 우분투 환경에 접속할 수 있었고, vi
명령어를 쓰지 않고도 자유롭게 파일을 작성할 수 있었습니다. 처음 알게된 방법이었고 상당히 유용하다고 생각되어 좋았습니다. 앞으로 가능하다면 이를 통해 리눅스 환경 내에 파일을 작성할 것 같습니다.
airflow DAG
의 schedule
이 어떠한 시간 형식을 띄고 있는 지 학습할 수 있어서 만족스러웠습니다.
윈도우 환경에서 도커파일을 통해 리눅스 bash을 열어 그 안에 에어플로우를 설치하는 것이 아닌 직접 설치한 Ubuntu
와 wsl
을 이용해 리눅스 환경 내에 도커를 설치하고 에어플로우를 설치하는 방법 을 실행했는데 wsl에서 도커가 실행되지 않아 어려움을 겪었습니다.
문제 해결을 위한 여러 검색을 통해 wsl 버전이 '2' 여야 하는데 현재 사용 중인 wsl이 버전 1이어서 실행되지 않았음을 깨달았고 wsl --set-version Ubuntu(배포환경명) 2
명령어를 통해 wsl 버전2 를 사용하게 되었고 다행히 에어플로우가 설치되어 이 다음 수업을 진행할 수 있었습니다.
부트캠프를 하면서 상당히 다양한 환경들을 마주했고, 그때마다 환경 설정하기 때문에 많은 것들이 겹쳐져 발생할 수 있는 에러가 많았고 그때마다 해결해가면서 해당 시스템에 익숙해질 수 있는 경험을 할 수 있었습니다.
시계열 라이브러리를 이용해 데이터 분석 코딩을 하면서 datetime
과 time
모듈을 이용해 시간의 정수화, 정수의 시간화 등을 실행하는 과정을 보면서 각각의 값들이 어떻게 변환되는 지 알 수 있었고 특히 시계열 데이터를 다룰 때 중요한 내용이라고 생각되어 만족스러운 학습이었습니다.
예측값 검증과 시각화 과정을 통해 '데이터 분석-예측' 등의 활동이 검증과정도 중요하지만 시각화를 통해 눈으로 다시 한번 직접 데이터들을 확인하는 것과 이후의 발표 자료나 협업 과정에서 매우 중요한 포인트가 될 것 같다는 생각이 들었습니다. 다양한 학습을 하면서 머리 속에 넣는 것도 중요하지만, 이를 입 밖으로, 표현하는 것도 중요하다고 생각되어 좋은 깨달음을 얻을 수 있었습니다.
다른 활동들로 인해 시간이 부족해 크롤링하는 과정을 airflow DAG
에 등록하지 못한 점이 아쉬웠습니다.
만약 AWS 서비스와 airflow
를 이용했다면 컴퓨터를 끄고도 2023-09-26 23:59 까지 데이터를 전부 모을 수 있을 뿐더러 계속해서 매 분마다 데이터를 모을 수 있을 것 같았지만 다음 시간으로 미루어 오늘의 학습에는 아쉬운 점이 되었습니다.
벌써 부트캠프를 한 지 17주, 약 4개월 정도의 시간이 흘렀고 회사 채용 공고들이 눈에 보였습니다. 그동안 학습한 내용들을 꾸준히 정리했고 이를 저만의 "포트폴리오" 로 활용하면서 취업 준비를 할 예정입니다. 아직 완벽하다고는 생각되지 않지만 이번 부트캠프를 하면서 무엇을 하면 좋고 즐거운 지를 알 수 있었던 것 같고 이를 중심으로 공채에 지원할 예정입니다.
각 회사마다 요구하는 것이 다르지만 저만의 장점을 잘 표현하고자할 것이고 코딩 테스트 또한 준비할 예정입니다.