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

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

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

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

辛酸史

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

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

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

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

这是个什么概念??

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

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

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

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

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

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

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

杭州车牌摇号73次不中的辛酸史,我用Python找到了原因,然后更无望了
而我参加工作后,从自行车换成电瓶车,从电瓶车直接换成了地铁!!!

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

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

杭州车牌摇号73次不中的辛酸史,我用Python找到了原因,然后更无望了
不行!我要跟命运做一回抗争,

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

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

获取数据

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

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

杭州车牌摇号73次不中的辛酸史,我用Python找到了原因,然后更无望了
于是我熟练地在浏览器输入了那个让我欢喜让我忧的url

杭州车牌摇号73次不中的辛酸史,我用Python找到了原因,然后更无望了
一番行云流水操作下来后,

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

全部复制了下来。

杭州车牌摇号73次不中的辛酸史,我用Python找到了原因,然后更无望了
接下来是数据分析阶段。

开始数据分析

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

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

杭州车牌摇号73次不中的辛酸史,我用Python找到了原因,然后更无望了
继续数据分析,亮出 python,做个词云图,可以看得更直观点:

杭州车牌摇号73次不中的辛酸史,我用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 个姓的条状图:

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

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()

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

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

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

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

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

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

二、学习软件

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

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

三、入门学习视频

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

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

四、实战案例

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

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

五、面试资料

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

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

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

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

上一篇:初体验-中国天气网


下一篇:CSS 学习记录(1)一些琐碎的内容