学习
实践
活动
专区
工具
TVP
写文章

Python使用“先知”预测公众号粉丝量

最近公众号的粉丝量一直都处于上涨状态,可喜可贺当然,作为一个上进的(摸鱼)公众号博主,当然要追求更远大的目标。我希望知道一个月后公众号的粉丝量会达到什么程度,并以此加强公众号的宣传方式。

正好,Facebook开源了一个名为"先知"(prophet)的模型,其能基于加法模型预测时间序列数据,它的非线性趋势与年、周、日的季节性以及假日效应相吻合。而且对丢失的数据和趋势的变化很健壮,通常能很好地处理异常值。

我们将根据 Python 实用宝典 最近60天的关注量变化趋势用来预测未来30天的关注量大小。

1. 安装fbprophet

现在,就让我们来试一下吧!首先是安装fbprophet, 这里的前提是大家都安装好了Python, 如果没有的话推荐看:Python超详细安装指南,如果你按照官方的教程, 用pip来进行安装, 你会发现TM啥也安装不上。

第一步,我们需要安装fbprophet的依赖PyStan:

pip install pystan

第二步,使用conda命令安装(需要安装anaconda, 搜anaconda官网安装即可):

conda install-c conda-forge fbprophet

2.导出公众号数据

这时候就要用F12大法了,在当前用户分析页空白处右键—检查,或者直接按F12打开开发者工具。

然后选择最近两个月的数据,找到useranalysis的数据包,点开来就会找到我们需要的数据,把这一片json数据保存下来存为data.json文件即可,如下图所示。

3.处理数据

加载json数据:

现在需要将日期和其对应的总粉丝数提取出来为一个pandas的dataframe. 如果你还没有安装 pandas,请在cmd/Terminal输入pip install pandas即可安装成功。

效果:

看得出来dataframe有点像字典和列表的集合。大家只要记住这个数据结构的形状即可,今天的教程不会太复杂。

4.预测未来30天的数据

接下来需要生成prophet对象,调用预测函数,预测未来30天的数据变化:

效果:

让我们来看看效果,表格中的yhat指的是预测的平均值,yhat_lower是预测的最小值,yhat_upper是预测的最大值。根据“先知”的预测,在未来30天内我们的粉丝量将会增加到529名粉丝,也就是说将增加16%。这个预测的值其实相对客观,我们一个月后就可以知道预测的准不准确了。

如果你喜欢我们今天的Python 教程,请持续关注我们,如果对你有帮助,麻烦在下面点一个赞/在看,有任何问题都可以在下方留言区留言,我们都会耐心解答的!

Python实用宝典 (pythondict.com)

不只是一个宝典

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191007A0IM3T00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

关注

腾讯云开发者公众号
10元无门槛代金券
洞察腾讯核心技术
剖析业界实践案例
腾讯云开发者公众号二维码

扫码关注腾讯云开发者

领取腾讯云代金券