본문 바로가기

분류 전체보기85

파이썬 - KBO 선수 기록 크롤링해서 엑셀로 저장하기 작년에 학교에서 통계 수업시간에 팀프로젝트를 하면서 특정 KBO 타자들의 기록을 엑셀 파일로 저장할 일이 생겼었다. 당시 나는 데이터 분석 파트를 맡고 있어서 크롤링은 다른 분이 해주셨는데, 그걸 보면서 참 신기하다는 생각을 했었다. 다만 아쉬웠던 점이 있었다. 그때 분석 팀이 원했던 것은 타자의 1년치 성적을 한 파일에 쭉 나열해서 저장하는 것이었는데, 소통이 잘 안 됐던 건지 크롤링 상의 문제였던 건지 수집 팀이 4월, 5월, 6월 등 월별로 기록을 저장해서 분석 팀에 넘겨줬었다. 그래서 일일이 복사 붙여넣기를 통해 파일을 힘들게 합쳤던 기억이 난다. 그래서 이젠 내가 직접 크롤링을 해보고자 한다. 목표는 한 선수의 1년치 기록을 하나의 엑셀파일로 저장하는 것이다. 크롤링을 공부한 책은 '데이터 과학.. 2023. 2. 20.
시계열 데이터 - 파이썬 auto_arima 및 ARIMA 모델 정리 오늘은 파이썬의 auto_arima 함수를 사용해보고 ARIMA 함수 내용을 마치고자 한다. 이전의 코로나 확진자 수를 예측해보는 코드를 짜면서 든 생각이, "그럼 코로나 확진자 말고 다른 데이터들도 다 이렇게 ARIMA 모델로 예측할 수 있는데, 그러면 어떤 데이터가 들어오더라도 사용자에게 일정 수준의 예측치를 제공해줄 수 있겠구나!" 하는 것이었다. 그래서 어떤 데이터가 들어오던 ARIMA 모델로 단기간의 미래를 예측해주는 그런 코드를 짜보기로 했다. 이걸 쉽게 가능하게 해준 것이 바로 auto_arima 함수였다. auto_arima 응용 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 from statsmodels.tsa.ari.. 2023. 2. 13.
시계열 데이터 - 코로나 확진자 수 ARIMA 모델로 예측하기 (2) 저번 포스팅에 이어 코로나 확진자 수를 ARIMA 모델을 사용해 예측해본 결과를 마저 기록해보도록 하겠다. https://tiabet0929.tistory.com/10 2023. 2. 10.
파이썬 - ARIMA predict 함수 오류 기록 https://tiabet0929.tistory.com/10 이 글을 포스팅하면서 발생한 오류를 해결하는 데에 아주 애를 먹었다. 원인을 알아내고 해결하는 데에 꼬박 2일이 걸렸고, stackoverflow 같은 곳에서도 명쾌한 해답을 얻기가 어려웠었기 때문에 따로 포스팅하고자 한다. 우선 발생한 오류는 The start argument could not be matchted to a location related to the index of the data 이다. 발생한 오류 나는 우선 처음에 ACF와 PACF를 확인하고자 했고, 그래서 늘 하던대로 statsmodels 패키지의 plot_acf 함수를 사용하는 코드를 짰다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1.. 2023. 2. 8.
시계열 데이터 - 코로나19 확진자 수 ARIMA 모델로 예측하기 (1) 스터디에서 데이콘의 코드를 참고하여 그동안 공부한 내용들을 사용해 실제 데이터에 적용해보는 시간을 가졌었다. 스터디에서 참고한 코드는 아래의 두 편이다. "차트만으로 코스피를 예측할 수 있을까?" 편은 내가 이미 진행한 내용하고 비슷했고, "약형 효율적 시장 가설" 편은 내가 다소 이해하기 어려운 부분들이 있어 생략한 부분들이 많았다. 배운 것을 활용해보고, 다른 사람들의 코드를 참고해봤다는 점에 의의를 두고 싶다. https://dacon.io/competitions/official/235980/codeshare/6556 차트만으로 코스피를 예측할 수 있을까? 월간 데이콘 KOSPI 기반 분석 시각화 경진대회 dacon.io https://dacon.io/competitions/official/2359.. 2023. 2. 8.
시계열 데이터 - 계절성 ARIMA 모델, SARIMA 그동안 공부만 하고 포스팅을 미루었었는데, 오늘은 그간 공부한 내용 중 핵심적인 내용인 계절성 ARIMA 모델, SARIMA 모델에 대해 간단하게 정리해보겠다. 계절성 ARIMA 모델, SARIMA 앞서 데이터의 정상성을 설명할 때, 추세나 계절성을 없애고 싶으면 차분을 진행하고, 분산을 일정하게 만들고 싶으면 로그를 씌운다고 공부한 바가 있다. 그래서 데이터의 계절성을 제거하고 싶을 때 1차 차분 내지 2차 차분을 진행했다. 하지만 SARIMA 에선, 데이터의 계절성을 차분을 통해 진행하는 것이 아닌 그대로 안고 간다고 생각하면 될 것이다. 자세한 건 밑의 예시에서 다루기로 하고, 필요한 개념들을 빠르게 훑어보자. 계절성 차분 앞서 공부한 1차 차분은, 현재 데이터와 이전 데이터, 즉 시차가 1인 데이.. 2023. 2. 7.