import openpyxl
import numpy as np
import matplotlib.pyplot as plt
#로또 번호 담는 리스트
l = []
# 엑셀파일 열기
wb = openpyxl.load_workbook('lotto.xlsx')
# 현재 Active Sheet 얻기
ws = wb.active
# 당첨번호 읽기 (보너스 번호는 제외함)
for r in ws.rows:
row_index = r[0].row
if row_index > 3:
n1 = r[13].value
n2 = r[14].value
n3 = r[15].value
n4 = r[16].value
n5 = r[17].value
n6 = r[18].value
l.append(n1)
l.append(n2)
l.append(n3)
l.append(n4)
l.append(n5)
l.append(n6)
# 각각 리스트에 담음
count_list= [] #각 숫자가 나온수 카운팅할 리스트
for i in range(1, 46): #1~45 까지 반복
count_list.append(l.count(i))
print(count_list) #각각 1부터 ~ 45까지 각 나온수의 개수가 담긴 리스트
x = list(range(1,46)) #x축은 1~45
y = count_list #y축은 count_list
plt.xticks(np.arange(min(x), max(x)+1, 1.0))
plt.title("Lotto_number")
plt.bar(x, y)
plt.show()
wb.close()
https://dhlottery.co.kr/gameResult.do?method=byWin
로또 공식 사이트를 참고해 회차별 당첨번호를 분석해봤습니다.
언어는 파이썬으로 했습니다. 파이썬을 선정한 이유는 역시 편리성과 생산성 때문..
확인해보니 대충 34가 제일 많이 나오는듯 하네요
물론 로또는 독립 시행이기 때문에 맨날 할때마다 확률이 달라집니다
여기에서 많이 나오는걸 뽑는다해서 당첨확률이 올라가지 않겠죠 -.-
뭘해도 로또의 확률은 $_{45}C_{6}$ ...
동전던지기를 했는데 앞면이 3번 나왔다고 뒤에 앞면이 나올 확률이 증가하진 않으니깐요
'프로그래밍 > Python' 카테고리의 다른 글
[Python] Selenium + 끄투핵 (0) | 2019.12.05 |
---|---|
[Python] Requests 와 Fiddler 동시에 이용하기 (0) | 2019.12.01 |
[Python] 리로스쿨 로그인 + 내신 가져오기 (0) | 2019.11.29 |
[Python] 정적분과 지니 계수 구하기 (0) | 2019.11.17 |
[Python] 파이썬으로 미분하기 (평균변화율 , 미분계수) (0) | 2019.11.04 |