Python 数据分析之双色球高频数据统计

2022-07-05 14:53:42 浏览数 (1)

基础数据准备

基础数据是通过爬虫获取到。

以下是从第一期03年双色球开奖号到今天的所有数据整理,截止目前一共2549期,balls.txt 文件内容如下

Python 代码实现

分析数据特征和数据处理方式选择

代码语言:javascript复制
#导入Counter
from collections import Counter

def readfile():
    red_lists=[]
    blue_lists=[]
    #打开文件并获取文件句柄
    with open("./balls.txt", "r",encoding='utf-8') as fp: 
    #开始读取文件并返回一个list
    list1=fp.readlines() 
    #遍历整个文件内容
    for i in range(len(list1)):
        #替换掉n的字符再按空格分隔
        list2=str(list1[i]).replace("n","").split(" ")
        for j in range(len(list2)):
            if j==6:
               #蓝球放入到blue_lists 列表中
               blue_lists.append(list2[j])
            else:
               #红球放入到red_lists 列表中
               red_lists.append(list2[j]) 
        #Counter可以快速便捷的对某些对象做一些统计操作,这里是对列表里面的数据进行出现次数统计,返回一个tuple
        red_count=Counter(red_lists)
        blue_count=Counter(blue_lists)
        #most_common可以用来统计列表或字符串中最常出现的元素并做排序,并返回一个list
        k = red_count.most_common(len(red_count)) 
        #输出出现频率最高的六个红球
        print("the red ball:",k[:6]) 
        l = blue_count.most_common(len(blue_count))
        #输出出现频率最高的六个蓝球
        print("the blue ball:",l[:6]) 
        
if __name__=="__main__":
    readfile()

执行结果
执行结果对比验证

从官网获取的数据进行对比,一致性校验通过

总结:

Python 在数据处理方面有着非常强大的优势,Python 的 Panda 库也可以非常出色的完成双色球的数据统计,大家有兴趣的可以实验一下。

0 人点赞