2020-06-25
python 微信好友数据视图化
一、选题目的
微信已成为我们日常生活中不可或缺的部分,随着时间的推进,好友的数量也暴增式增长,但是你是否知道自己的好友男女比例、全国分布情况、签名情况呢?。通过这个课题,我们能够了解自己微信好友的统计情况,包括男女比例,省份、市、全国分布情况;个性签名等情况。
二、数据准备
分析的数据从哪里来呢?。
1.可以利用网上公开的微信好友数据。
2.也可以将自己的微信好友进行数据统计
在这里我采用的是自己的微信好友数据,共计500多条数据
获取数据的核心代码:


代码说明:
1.首先调用Python中的itchat库,利用它我们就可以登录微信以及获取微信好友的信息。
2.然后再利用Python中的xlrd、xlutils.copy库,利用它来进行数据的插入操作
数据插入情况
截图:

此处设计到个人隐私问题,所以将部分数据进行了打马。共有500条微信好友数据
三、数据清洗
1.利用Python中的pandas库,读取excel表,然后进行相应的清洗数据操作,核心代码如下

四、数据可视化
1. 好友微信签名的词云情况
核心知识点:
a.先将微信好友的签名存入文本中,然后进行jieba分词
b.利用Python中的wordcloud进行调用
c.参数可以自己调,比如颜色

换张图片底色看看。

从图中可以看到,我的微信好友签名积极向上的占绝大多数,比如努力、自律、认真都是高频词
2.微信好友市分布情况

a.从图可以清晰的看到自己的好友在哪个市的分布情况,还能知道在某个市的人数
3. 微信好友省分布情况

a.由右图看出,我的广东好友几乎占了好友的全部。
b.这说明了我的居住省份也是广东
4.微信好友男女比例分布情况

a.从中为什么会出现未知性别呢?
b.因为有些好友男女性别项没有填
c.从图中也可以看出,我的微信好友男性居多。
五、核心代码展示:
1.分词

2.词云

3.其它核心

六、总结与展望
总结:
通过这个课题,我学会了如何用Python访问微信;如何用pandas库操作Excel表;如何用python进行简单的可视化;如何进行词频分词;了解了如何生成自己所想要的词云……
展望:
以后可以尝试往python数据分析方向走走,因为毕竟这个简单的可视化深度还是不太够