1- import pandas as pd
2-
3- # 建立範例資料 (第 114000079 期到 115000007 期)
4- data = {
5- "期別" : ["114000079" ,"114000080" ,"114000081" ,"114000082" ,"114000083" ,
6- "115000001" ,"115000002" ,"115000003" ,"115000004" ,"115000005" ,"115000006" ,"115000007" ],
7- "開獎日期" : ["2025-10-02" ,"2025-10-06" ,"2025-10-09" ,"2025-10-13" ,"2025-10-16" ,
8- "2026-01-01" ,"2026-01-05" ,"2026-01-08" ,"2026-01-12" ,"2026-01-15" ,"2026-01-19" ,"2026-01-22" ],
9- "第一區號碼" : [
10- [3 ,5 ,12 ,24 ,27 ,30 ],[5 ,6 ,9 ,14 ,15 ,37 ],[1 ,6 ,11 ,20 ,34 ,35 ],
11- [2 ,8 ,12 ,18 ,28 ,33 ],[4 ,9 ,16 ,21 ,25 ,36 ],[7 ,14 ,22 ,23 ,31 ,35 ],
12- [11 ,14 ,19 ,25 ,34 ,37 ],[7 ,17 ,25 ,26 ,27 ,33 ],[1 ,9 ,14 ,17 ,33 ,38 ],
13- [8 ,10 ,16 ,26 ,31 ,38 ],[10 ,16 ,20 ,23 ,35 ,37 ],[11 ,17 ,29 ,30 ,34 ,35 ]
14- ],
15- "第二區" : [7 ,5 ,8 ,3 ,4 ,1 ,4 ,3 ,3 ,5 ,5 ,6 ],
16- "備註" : ["頭獎" ,"無頭獎" ,"無頭獎" ,"無頭獎" ,"無頭獎" ,"無頭獎" ,
17- "無頭獎" ,"無頭獎" ,"無頭獎" ,"無頭獎" ,"無頭獎" ,"無頭獎" ]
18- }
19-
20- df = pd .DataFrame (data )
21-
22- # 計算第一區 01~38 次數與頻率
23- freq_zone1 = pd .DataFrame ({"號碼" : list (range (1 ,39 ))})
24- freq_zone1 ["出現次數" ] = freq_zone1 ["號碼" ].apply (lambda x : sum (df ["第一區號碼" ].apply (lambda y : x in y )))
25- freq_zone1 ["頻率(%)" ] = freq_zone1 ["出現次數" ]/ freq_zone1 ["出現次數" ].sum ()* 100
26-
27- # 計算第二區 01~08 次數與頻率
28- freq_zone2 = pd .DataFrame ({"號碼" : list (range (1 ,9 ))})
29- freq_zone2 ["出現次數" ] = freq_zone2 ["號碼" ].apply (lambda x : sum (df ["第二區" ]== x ))
30- freq_zone2 ["頻率(%)" ] = freq_zone2 ["出現次數" ]/ freq_zone2 ["出現次數" ].sum ()* 100
31-
32- # 將資料寫入 Excel,多 sheet
33- with pd .ExcelWriter ("威力彩分析_114000079_115000007.xlsx" ) as writer :
34- df .to_excel (writer , sheet_name = "RawData" , index = False )
35- freq_zone1 .to_excel (writer , sheet_name = "Freq_Zone1" , index = False )
36- freq_zone2 .to_excel (writer , sheet_name = "Freq_Zone2" , index = False )
37-
38- print ("Excel 檔案已生成:威力彩分析_114000079_115000007.xlsx" )
1+ # import pandas as pd
2+
3+ # # 建立範例資料 (第 114000079 期到 115000007 期)
4+ # data = {
5+ # "期別": ["114000079","114000080","114000081","114000082","114000083",
6+ # "115000001","115000002","115000003","115000004","115000005","115000006","115000007"],
7+ # "開獎日期": ["2025-10-02","2025-10-06","2025-10-09","2025-10-13","2025-10-16",
8+ # "2026-01-01","2026-01-05","2026-01-08","2026-01-12","2026-01-15","2026-01-19","2026-01-22"],
9+ # "第一區號碼": [
10+ # [3,5,12,24,27,30],[5,6,9,14,15,37],[1,6,11,20,34,35],
11+ # [2,8,12,18,28,33],[4,9,16,21,25,36],[7,14,22,23,31,35],
12+ # [11,14,19,25,34,37],[7,17,25,26,27,33],[1,9,14,17,33,38],
13+ # [8,10,16,26,31,38],[10,16,20,23,35,37],[11,17,29,30,34,35]
14+ # ],
15+ # "第二區": [7,5,8,3,4,1,4,3,3,5,5,6],
16+ # "備註": ["頭獎","無頭獎","無頭獎","無頭獎","無頭獎","無頭獎",
17+ # "無頭獎","無頭獎","無頭獎","無頭獎","無頭獎","無頭獎"]
18+ # }
19+
20+ # df = pd.DataFrame(data)
21+
22+ # # 計算第一區 01~38 次數與頻率
23+ # freq_zone1 = pd.DataFrame({"號碼": list(range(1,39))})
24+ # freq_zone1["出現次數"] = freq_zone1["號碼"].apply(lambda x: sum(df["第一區號碼"].apply(lambda y: x in y)))
25+ # freq_zone1["頻率(%)"] = freq_zone1["出現次數"]/freq_zone1["出現次數"].sum()*100
26+
27+ # # 計算第二區 01~08 次數與頻率
28+ # freq_zone2 = pd.DataFrame({"號碼": list(range(1,9))})
29+ # freq_zone2["出現次數"] = freq_zone2["號碼"].apply(lambda x: sum(df["第二區"]==x))
30+ # freq_zone2["頻率(%)"] = freq_zone2["出現次數"]/freq_zone2["出現次數"].sum()*100
31+
32+ # # 將資料寫入 Excel,多 sheet
33+ # with pd.ExcelWriter("威力彩分析_114000079_115000007.xlsx") as writer:
34+ # df.to_excel(writer, sheet_name="RawData", index=False)
35+ # freq_zone1.to_excel(writer, sheet_name="Freq_Zone1", index=False)
36+ # freq_zone2.to_excel(writer, sheet_name="Freq_Zone2", index=False)
37+
38+ # print("Excel 檔案已生成:威力彩分析_114000079_115000007.xlsx")
39+
40+
41+ import random
42+
43+ # 模擬一次威力彩開獎
44+ main_numbers = random .sample (range (1 , 39 ), 6 ) # 從1~38中抽6個
45+ special_number = random .randint (1 , 8 ) # 從1~8中抽1個
46+ print ("第一區:" , sorted (main_numbers ))
47+ print ("特別號:" , special_number )
0 commit comments