Python / / 2022. 1. 20. 20:45

로그]로또 예측 - facebook prophet 이용

728x90
반응형
forecast1 = forecast['yhat'].values[len(forecast)-1] ###예측된값들중에 마지막 값 가져오기
print('The Prophet Predicted Value :', forecast1) ###마지막값 프린트

출처: https://superhky.tistory.com/192

prophet 소개 설명: https://hyperconnect.github.io/2020/03/09/prophet-package.html

 

로또에 당첨되기 위해 좋은꿈 혹은 좋은 기운은 필수 인것인가?

 

파이썬 연습삼아 위 블로그에 있는 내용을 따라 해보았다.

동행복권: https://dhlottery.co.kr/gameResult.do?method=byWin&wiselog=H_C_1_1 

 

로또6/45 - 회차별 당첨번호

998회 당첨결과 (2022년 01월 15일 추첨) 당첨번호 13 17 18 20 42 45 998회 순위별 등위별 총 당첨금액, 당첨게임 수, 1게임당 당첨금액, 당첨기준, 비고 안내 순위 등위별 총 당첨금액 당첨게임 수 1게임

dhlottery.co.kr

위 링크에 들어가서 아래에 보면 엑셀다운로드라고 있다. 회차 기간선택하고 다운을 받는다.

데이터 다운받기
데이터 정리 csv로 저장

다운받은 엑셀파일을 오른쪽 그림처럼 정리를 해주고, csv로 저장한다.

 

여기서는 각회차에 추첨된 수를 더해서 다음에 나올 합을 예측하고, 예측된 합에 해당하는 6가지 수를 추출하게 할것이다. 합을 예측하는것까지는 하나의 방법이 될 수 있는데, 확률을 줄일 수 있다라고 봐야 될것이다.

예측된 합 수를 다시 로또 번호 6개로 만드는데, 이는 전체 확률 보다는 높을 수 있겠지만, 가지수가 많이 나오고 있어,

이런 방법도 있구나, 하고 보면 좋을거 같다.

import pandas as pd   ### pandas import
from fbprophet import Prophet   ### prophet import

df = pd.read_csv('lotto.csv', encoding='CP949') ### Read csv file
df = df.rename(columns={'date':'ds', 'sum':'y'})  ### 컬럼명 바꿔주기 date 날짜를 ds로 sum을 y로
df.plot(x='ds', y='y', figsize = (16,8))

데이타 plot

### prophet 사용
model = Prophet() ###prophet 모델 만들기
model.fit(df)    ### 데이터를 모델에 피팅하기

### 날짜, 시간 결과치는 비슷하다.
### future = model.make_future_dataframe(periods=7)  ### 날짜로 계산
future = model.make_future_dataframe(periods=168, freq='H') ###시간으로 계산
forecast = model.predict(future)  ### 예측하기
model.plot(forecast)

예측된값

forecast1 = forecast['yhat'].values[len(forecast)-1] ###예측된값중에서 마지막값 가져오기
print('The Prophet Predicted Value :', forecast1) ###예측값 프린트

 

 

 

 

 

 

 

728x90
반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유