IT

로또 당첨번호 분석 예측 파이썬으로 직접 해보자

쪼이빠빠 2023. 6. 28. 13:32
728x90
반응형

파이썬으로 다양한 분석을 할 수 있다는 사실은 널리 알려져 있다. 그렇다면 로또 당첨번호 분석도 할 수 있지 않을까 싶어서 한번 구현해 보았다.

 

 

 

 

 

파이썬으로 로또 당첨번호 분석 및 예측해 보기

로또 당첨번호 분석 예측 파이썬 활용

Contents
1. 파이썬 설치
2. 파이썬 패키지 설치
3. 로또 역대 당첨번호 가져오기
4. 분석 코드 작성
5. 로또 당첨번호 분석 및 번호 예측

 

 

1. 파이썬 설치

파이썬은 공식 홈페이지에서 무료로 다운로드 및 설치할 수 있습니다.

  • 아래 공식홈페이지에서 'Download Python' 버튼을 눌러 설치파일을 다운로드하고 실행합니다.

파이썬 다운로드

 

Download Python

The official home of the Python Programming Language

www.python.org

  • 'Install Now'를 클릭하여 설치.

파이썬 설치

 

 

 

 

 

 

 

2. 파이썬 분석 패키지 설치

  • 윈도우 키를 누르고 'cmd'를 입력하여 cmd 창을 실행.
  • 다음 명령어를 입력하여 파이썬 패키지 설치.
pip install pandas numpy scipy

 

3. 로또 역대 당첨번호 가져오기

역대 로또 당첨번호는 동행복권 공식 홈페이지에서 다운로드할 수 있습니다.

  • 아래 동행복권 홈페이지에 들어가서 회차별 당첨결과를 클릭합니다.

동행복권 홈페이지

 

동행복권

당첨번호 6 18 28 30 32 38 보너스번호 15 1등 총 당첨금 258억원(11명 / 23억) 이전 회차 당첨정보 보기 다음 회차 당첨정보 보기

dhlottery.co.kr

로또 당첨번호 확인

  • 아래로 이동하여 1회부터로 변경하고 다운로드 버튼을 누릅니다.

파이썬으로 로또 당첨번호 예측

 

 

 

 

 

 

 

 

 

  • 엑셀을 열고 당첨번호 부분만 복사하여 새 파일에 붙여 넣고 저장합니다.(분석용으로 편집)

로또 당첨번호 분석
로또 당첨번호 분석 예측

 

4. 분석 코드 작성

  • 메모장을 실행하고 아래 코드를 입력합니다.
  • 코드 입력 시 엑셀 파일 경로와 엑셀파일 명을 수정합니다.
  • 파일 이름을 'getlotto.py'로 입력하고, 파일 형식을 '모든 파일'로 선택하고 저장합니다.
import pandas as pd
import numpy as np
from scipy.stats import chisquare

# 데이터 로드
df = pd.read_excel("C:\Dev\getLotto\lotto_20230628.xlsx")


# 각 번호의 빈도수 계산
counts = pd.Series(np.concatenate(df.values)).value_counts().sort_index()

# 카이제곱 검정 수행
expected = [len(df.values) * 6 / 45] * 45  # 가정: 모든 번호가 균등하게 나옴
result = chisquare(counts, f_exp=expected)

# 최종적으로 6개의 숫자 추천
frequent_numbers = counts.nlargest(6).index.tolist()
recommendation = np.random.choice(frequent_numbers, 6, replace=False)
print(f"Recommendation: {recommendation}")

 

5. 로또 당첨번호 분석 및 번호 예측

  • 2번에서 처럼 cmd 창을 실행하고 cd 명령어로 파이썬 코드를 저장한 위치로 이동합니다.

파이썬 로또 당첨번호 분석 코드

 

  • 파이썬 코드를 실행합니다.
python getlotto.py

파이썬 로또 당첨번호 분석




 


파이썬 데이터 분석을 공부하면서 재미로 만들어 본 것이라 당연히 정확도 따지면 안 될 것이다. 로또 번호의 경우 동전 던지기처럼 결과를 전혀 예측할 수 없다. 이런 식으로 데이터 분석이 가능하다는 것 정도만 배워가면 좋을 듯하다.

반응형