Python项目分析:预测双色球福利彩票中奖号码

前言

大家早好、午好、晚好吖 ❤ ~


双色球是中国福利彩票的一种玩法。

红球一共6组,每组从1-33中抽取一个,六个互相不重复。

然后蓝球是从1-16中抽取一个数字,这整个组成的双色球

python从零基础入门到实战,想要源码+数据集的,戳我

今天,我们就用Python来统计一下各号码的中奖概率,并可视化展示(随便玩玩,不要当真)。

我本人,也会买概率最大的几个号码试试,中奖的话,我就删号,并开始朴实无华有钱人的生活!!!

采集数据

先是数据的来源,采集双色球往期中奖数据

导入模块

import requests # 数据请求

requests 发送请求模块, 是第三方模块,需要手动安装。

win + r输入cmd按回车打开命令提示符窗口,使用pip安装

发送请求的url地址


发送请求

params = {'name': 'ssq','issueCount': '','issueStart': '','issueEnd': '','dayStart': '2017-10-24','dayEnd': '2021-08-04','pageNo': page,
}
headers = {'Referer': '',# 有网址不给过,照下方图片添加一下哦~'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36'
}
response = requests.get(url=url, params=params, headers=headers)

<> 对象 200 请求成功 状态码

解析数据,for遍历

for index in result:dit = {'期号': index['code'],'开奖日期': index['date'],'红球': index['red'],'蓝球': index['blue'],'一等奖中奖注数': index['prizegrades'][0]['typenum'],'一等奖中奖金额': index['prizegrades'][0]['typemoney'],'二等奖中奖注数': index['prizegrades'][1]['typenum'],'二等奖中奖金额': index['prizegrades'][1]['typemoney'],'三等奖中奖注数': index['prizegrades'][2]['typenum'],'三等奖中奖金额': index['prizegrades'][2]['typemoney'],'四等奖中奖注数': index['prizegrades'][3]['typenum'],'四等奖中奖金额': index['prizegrades'][3]['typemoney'],'五等奖中奖注数': index['prizegrades'][4]['typenum'],'五等奖中奖金额': index['prizegrades'][4]['typemoney'],'六等奖中奖注数': index['prizegrades'][5]['typenum'],'六等奖中奖金额': index['prizegrades'][5]['typemoney'],'一等奖中奖地区': index['content'],'奖池金额': index['poolmoney']}

保存数据

import csv # 内置模块f = open('双色球.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['期号','开奖日期','红球','蓝球','一等奖中奖注数','一等奖中奖金额','二等奖中奖注数','二等奖中奖金额','三等奖中奖注数','三等奖中奖金额','四等奖中奖注数','四等奖中奖金额','五等奖中奖注数','五等奖中奖金额','六等奖中奖注数','六等奖中奖金额','一等奖中奖地区','奖池金额'])csv_writer.writeheader() # 写入表头
csv_writer.writerow(dit)
print(dit)

运行代码,这样就得到了往期双色球的数据了

分析数据

先导入需要用到的模块

import pandas as pd
from pyecharts.charts import *
from sklearn.linear_model import LogisticRegression

读取采集到的表格数据

data = pd.read_csv('双色球.csv',encoding='utf-8', engine='python')
data.head()


取数据,指定训练集和测试集

def get_lotto_data(data, lotto, lotto_id):data['lotto_id'] = lotto_idX = []Y = []# 标签and值for s, p in zip(data['lotto_id'], data[lotto]):X.append([float(s)])Y.append(float(p))return X, Y

建立线性回归模型

def linear_model_test(X, Y, predict_value):regr = LogisticRegression()regr.fit(X, Y)predict_outcome = regr.predict(predict_value)predictions = {}predictions['intercept'] = regr.intercept_predictions['coefficient'] = regr.coef_predictions['predicted_value'] = predict_outcomereturn predictions

使用线性回归推测中奖号码

def get_predicted_num(file, lotto, lotto_id):X, Y = get_lotto_data(file, lotto, lotto_id)predict_value = [[33]]result = linear_model_test(X, Y, predict_value)if lotto_id < 7:print(f'中奖第{lotto_id}个红球为:', result['predicted_value'].astype('int64'), '号球')else:print('中奖蓝球为:', result['predicted_value'].astype('int64'), '号球')

预测结果

get_predicted_num(data, 'r1', 1)  # 预测红1
get_predicted_num(data, 'r2', 2)  # 预测红2
get_predicted_num(data, 'r3', 3)  # 预测红3
get_predicted_num(data, 'r4', 4)  # 预测红4
get_predicted_num(data, 'r5', 5)  # 预测红5
get_predicted_num(data, 'r6', 6)  # 预测红6
get_predicted_num(data, '蓝球', 7)  # 预测蓝7

可视化展示

红球中奖概率分布图

x = red_ball_count.index.tolist()
y = red_ball_count.values.tolist()
# 可视化展示 
pie = (Pie().add("",[list(z) for z in zip(x, y)])
)
pie.render_notebook()


蓝球中奖概率分布图

x = blue_ball_count.index.tolist()
y = blue_ball_count.values.tolist()
pie = (Pie().add("",[list(z) for z in zip(x, y)])
)
pie.render_notebook()


蓝球中奖次数分布

from pyecharts import options as opts
from pyecharts.charts import PictorialBar
from pyecharts.globals import SymbolTypec = (PictorialBar().add_xaxis(x).add_yaxis("",y,label_opts=opts.LabelOpts(is_show=False),symbol_size=18,symbol_repeat="fixed",symbol_offset=[0, 0],is_symbol_clip=True,).reversal_axis().set_global_opts(title_opts=opts.TitleOpts(title='蓝球中奖号码'),xaxis_opts=opts.AxisOpts(is_show=False),yaxis_opts=opts.AxisOpts(axistick_opts=opts.AxisTickOpts(is_show=False),axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(opacity=0)),),)
)
c.render_notebook()


中奖注数漏斗图

x_data = df['中奖注数'].index.tolist()
y_data = df['中奖注数'].values.tolist()c = (Funnel().add("中奖注数漏斗图",[list(z) for z in zip(x_data, y_data)],label_opts=opts.LabelOpts(position="inside"),).set_global_opts(title_opts=opts.TitleOpts(title="中奖注数漏斗图"))
)
c.render_notebook()

很真实,基数太大,一、二等奖的中奖数都看不见了

尾语 💝

好了,今天的分享就差不多到这里了!

宁外给大家推荐一个好的教程:

【48小时搞定全套教程!你和大佬只有一步之遥【python教程】

有更多建议或问题可以评论区或私信我哦!一起加油努力叭(ง •_•)ง

喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!

请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/17057.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于python的数据分析系统,python数据分析经典案例

大家好&#xff0c;本文将围绕利用python进行数据分析案例展开说明&#xff0c;基于python的数据分析系统是一个很多人都想弄明白的事情&#xff0c;想搞清楚基于python的数据分析题目需要先了解以下几个事情。 1、如何利用python进行数据分析 利用python进行数据分析 链接: …

自己的智能AI聊天机器人,可自定义头像,免费html源码分享,粘贴即用!

1.展示效果 效果预览图&#xff1a; 新增小功能&#xff1a; ① 在原有的基础上加入了本地实时存档的功能&#xff0c;按照下面的步骤便可以随时在本地查看以往和智能AI所有的聊天记录哦&#xff01;再也不用担心关闭网页后先前的聊天内容全部消失啦&#xff01; PS&#xff1a…

深度学习实战30-AIGC项目:自动生成思维导图文件,解放双手

大家好,我是微学AI,今天给大家介绍一下深度学习实战30-AIGC项目:自动生成思维导图文件,解放双手,思维导图是一种常见的工具,用于将复杂的信息和概念以图形化方式展示出来。AIGC项目旨在将这种思维导图的创建过程自动化,并通过使用ChatGPT作为生成器,使其变得更智能化和…

AIGC被ChatGPT带火!底层基础算力有望爆发式增长

ChatGPT火爆全球的背后&#xff0c;可以窥见伴随人工智能技术的发展&#xff0c;数字内容的生产方式向着更加高效迈进。ChatGPT属于AIGC的具体应用&#xff0c;而AIGC是技术驱动的数字内容新生产方式。AIGC类产品未来有望成为5G时代新的流量入口&#xff0c;率先受益的有望是AI…

微信没有回车键怎么换行_微信打字怎么换行

聊天换行是我们经常会遇到的情况,但是在微信聊天的时候,不论是手机微信APP还是电脑版微信,很多人都会发现本来想使用enter键换行的,结果却是把刚才的消息发出去了,那么微信打字怎么换行呢?下面就以苹果手机版微信和电脑微信分别为例给大家介绍一下吧。 微信打字怎么换行 …

chatgpt赋能python:Python主动换行的方法

Python主动换行的方法 Python是一种高级编程语言&#xff0c;它的语法简单易学&#xff0c;功能强大&#xff0c;应用范围广泛。在Python编程中&#xff0c;经常会遇到需要换行的情况&#xff0c;例如要在长字符串中插入回车符、将一条代码语句拆成多行等。 本文将介绍Python…

chatgpt智能提效职场办公-ppt怎么转换成word文档

作者&#xff1a;虚坏叔叔 博客&#xff1a;https://xuhss.com 早餐店不会开到晚上&#xff0c;想吃的人早就来了&#xff01;&#x1f604; 将PPT转换成Word文档有多种方法&#xff0c;以下是其中的一种&#xff1a; 打开PPT文件&#xff0c;并选择“文件”选项卡中的“另存为…

目前最强的AI绘画模型——Midjourney v5

文章目录 Midjourney v5 介绍加入社区使用ChatGPT生成提示词正式测试 我想&#xff0c;各类不仅是文字工作领域&#xff0c;艺术设计等相关的行业也应当被彻底颠覆了。 Midjourney v5 介绍 官网&#xff1a;https://www.midjourney.com/home/?callbackUrl%2Fapp%2F 订阅&…

5个超好用的国内AI绘图工具

一、引言 苹果亲自下场嵌入 AI 工具&#xff01;在苹果的官网发布了这样一段描述“Today, we are excited to release optimizations to Core ML for Stable diffusion in macOS 13.1 and iOS 16.2, along with code to get started with deploying to Apple Silicon devices.…

剪映 自动打关键帧 AutoHotkey

牙叔教程 简单易懂 明确目的 做小说推文的话&#xff0c; 前面几分钟肯定要自己打关键帧&#xff0c; 所以这里的自动打关键帧指的是后面几分钟的图片&#xff0c; 对关键帧要求比较高的同学可以划走了, 因为这里介绍的是简单的 上上下下缩放的关键帧 要求 用剪映提取字幕…

chatgpt赋能python:Python如何写字:学习Python绘制字符和字形

Python如何写字&#xff1a;学习Python绘制字符和字形 Python是世界上最受欢迎的编程语言之一&#xff0c;它可以用于创建各种应用&#xff0c;如数据科学、网络开发和机器学习等领域。但是&#xff0c;你是否知道Python还可以用来绘制字符和字形吗&#xff1f; 在本文中&…

chatgpt赋能python:Python如何输入符号——从基础到高级

Python如何输入符号——从基础到高级 Python是一种非常流行的编程语言&#xff0c;它被广泛应用于各种行业和领域。在Python中输入符号是非常重要的基础操作&#xff0c;本文将介绍Python如何输入符号的方法&#xff0c;包括基础的符号输入和高级的符号输入。 基础的符号输入…

chatgpt赋能python:Python中的点怎么打出来?

Python中的点怎么打出来&#xff1f; Python中的点是一个很基本的符号&#xff0c;它在代码中扮演着非常重要的角色。在本文中&#xff0c;我们将解释如何在Python中打出点以及点的作用。 首先&#xff0c;我们需要了解Python中点的使用。在Python中&#xff0c;点通常用作属…

我可能用到的网站和软件

(一)程序员交流的网站 csdn博客 https://www.csdn.net/博客园 博客园 - 开发者的网上家园InfoQ InfoQ - 促进软件开发及相关领域知识与创新的传播-极客邦掘金 掘金 (juejin.cn) (二)代码管理工具 github GitHub: Where the world builds software GitHub 有时候卡&…

WindowBuilder、SWT、jface

GUI&#xff08;Graphical User Interface&#xff0c;简称 GUI&#xff0c;图形用户界面&#xff09;是指采用图形方式显示的计算机操作用户界面&#xff0c;与早期计算机使用的命令行界面相比&#xff0c;图形界面对于用户来说在视觉上更易于接受。 Java GUI主要有两个核心库…

跟简单却又晦涩的 Promise 说 Hello

一、前言 我不知大家是如何接触到的 Promise, 我想可能是 Axios? 可能是对异步方法的封装&#xff1f;可能是对 Vue 中方法的封装&#xff1f;对 React 中方法的封装&#xff1f;我记得我当时还是只会一些 ES5 语法小白的时候,为了看懂别人写的代码&#xff0c;大量恶补 ES6 的…

在win10电脑上搭建python环境下的本地AI绘画工具Stable Diffusion

随着Chatgpt的横空出世&#xff0c;人工智能受到了前所没有的热棒&#xff0c;AI绘画也进入大众的视野。 Stable Diffusion是一种可以部署在本地环境上运行的人工智能绘画工具&#xff0c;图形运算主要用到的是显卡的GPU性能&#xff0c;因此最好有至少4G显存的显卡。 Stable…

chatgpt赋能python:Python画图写名字——提升SEO的绝佳选择

Python画图写名字——提升SEO的绝佳选择 随着互联网的发展&#xff0c;SEO&#xff08;搜索引擎优化&#xff09;变得越来越重要&#xff0c;而优秀的内容和图片对SEO排名的提升起着非常重要的作用。Python作为一种高效的编程语言&#xff0c;也是SEO方面的新宠&#xff0c;因…

Qt6教程之三(6) 界面自绘与绘图类

据博主所知&#xff0c;Qt的绘图技术目前分为三大阵营&#xff0c;分别是&#xff1a; 一&#xff0c;基于QWidget的界面自绘制&#xff0c;这种方式纯粹为纯代码绘制&#xff0c;随着绘制图形量的不断增加&#xff0c;会导致其难以管理和性能不佳&#xff1b; 二&#xff0c…

HighCharts实现3D不同高度圆环图、3D饼图

最近做可视化比较多&#xff0c;就常用的图表类型做了一下总结。 因为做可视化的图表代码量非常大&#xff0c;所以会把echarts图表单独抽离出来&#xff0c;封装成一个组件&#xff0c;也可以复用&#xff0c;所以这里我直接把封装的组件直接放在这里&#xff0c;是可以直接拿…