ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

杭州车牌摇号73次不中的辛酸史,我用Python找到了原因,然后更无望了

2022-01-26 18:05:10  阅读:234  来源: 互联网

标签:摇号 plt Python 辛酸史 学习 import font


消失了一周的 Kevin 归来了!本期我们不讲敏感的东西。因为*饭已经吃得很饱了。

讲讲一个朋友摇号(车牌)的辛酸史。以及我如何用 python 的技术(爬虫,数据分析,可视化)帮他找到原因,并让他更伤心的故事。

文中的数据仅供交流学习,不能作为其他使用依据。文中统一使用了第一人称我,其中摇号的是我朋友。

辛酸史

在这里插入图片描述

摇号次数又默默地执行了一次+=1,

当初早知道摇六年都摇不到,还不如趁早又便宜买一块了。。

二月份个人中签率为0.54%!!

这是个什么概念??

平均情况要摇近 200 次才有可能中 1 次!!200 次,要 16.6 年!!

我估计那个时候,人们都开飞机出行了吧。。

在这里插入图片描述
大学同宿舍的老王,

参加工作后,把自行车换成了电瓶车,

摇了三次号后把电瓶车换成了小汽车,

天天载着不同的妹子到处兜风!!!

这才是青春岁月应有的记忆!!!!

在这里插入图片描述
而我参加工作后,从自行车换成电瓶车,从电瓶车直接换成了地铁!!!

再看着 100 万人摇 5000 多块牌照,

感觉我自己就是 5,000/1,000,000 里的分母中凑数的。

在这里插入图片描述
不行!我要跟命运做一回抗争,

我要找一找摇车牌的规律!!

在这里插入图片描述
说干就干!

获取数据

数据的获取可以用爬虫,也可以自己手工复制。这里假设使用复制的方法。实际上我使用的是爬虫。相关代码获取方法我会在文末说明。

网站目标就是某市的小客车增量指标网站。你可以用同样的方法分析你自己城市的网站。

在这里插入图片描述
于是我熟练地在浏览器输入了那个让我欢喜让我忧的url

在这里插入图片描述
一番行云流水操作下来后,

把每个中签者的姓氏,通过复制粘贴,复制粘贴,复制粘贴

全部复制了下来。

在这里插入图片描述
接下来是数据分析阶段。

开始数据分析

请大家给我点时间~我要点一下,哪个姓氏老是中签…

经过三天三夜的努力,我终于点完了…

在这里插入图片描述
继续数据分析,亮出 python,做个词云图,可以看得更直观点:

在这里插入图片描述
分享代码:

import matplotlib.pyplot as plt
from wordcloud import WordCloud


# 1.读入txt文本数据
# 只要读入文本数据,词云这个库就会自动对每个出现的字符进行计数,并按数量多少生成相对尺寸的字符图。
text = open(r'yaohao_data_analysis.txt', "r",encoding='utf-8').read()

# 2.生成词云图,这里需要注意的是WordCloud默认不支持中文,所以这里需已下载好的中文字库
# 无自定义背景图:需要指定生成词云图的像素大小,默认背景颜色为黑色,统一文字颜色:mode='RGBA'和colormap='pink'
wc = WordCloud(
        # 设置字体,不指定就会出现乱码
        font_path=r'./font.otf',
        # 设置背景色
        background_color='white',
        # 设置背景宽
        width=800,
        # 设置背景高
        height=600,
        # 最大字体
        max_font_size=200,
        # 最小字体
        min_font_size=50,
        mode='RGBA'
        #colormap='pink'
        )
# 产生词云
wc.generate(text)
# 保存图片
wc.to_file(r"wordcloud.png") # 按照设置的像素宽高度保存绘制好的词云图,比下面程序显示更清晰
# 3.显示图片
# 指定所绘图名称
plt.figure("摇号分析图")
# 以图片的形式显示词云
plt.imshow(wc)
# 关闭图像坐标系
plt.axis("off")
plt.show()

再来个中签率最高前 20 个姓的条状图:

在这里插入图片描述
分享代码:

import re
from collections import Counter
import matplotlib.pyplot as plt

# 实例化一个counter对象
count = Counter()

# 将所有的姓氏正则匹配出来
with open('./yaohao_data_analysis.txt','r',encoding="utf-8")as f:
    text = f.read()
f_name_list = re.findall(r'[\u4E00-\u9FA5]',text)

for n in f_name_list:
 count[n] += 1

# 将count转成字典
d = dict(count)

# 将无序的字典进行排序
def dict_sort(dic):
    l=list(dic.items())
    l.sort(key=lambda x:x[1],reverse=True)
    return l

key=[]
value=[]
for k,v in dict_sort(d):
    key.append(k)
    value.append(v)

# 生成条形图
# 这两行代码解决 plt 中文显示的问题
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

plt.bar(key[:20], value[:20])
plt.title('摇号分析条形图')
plt.show()

排名第一的真的是隔壁老王!!

在这里插入图片描述
后记

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

标签:摇号,plt,Python,辛酸史,学习,import,font
来源: https://blog.csdn.net/JAVAmonster12/article/details/122706318

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有