美文网首页数据分析
产品推广策略数据分析 - 游戏为例

产品推广策略数据分析 - 游戏为例

作者: 羋学僧 | 来源:发表于2018-12-25 18:57 被阅读0次

    项目:产品推广策略数据分析 - 游戏为例


    本案例基于搜索引擎数据,针对热门游戏《旅行青蛙》的推广策略进行分析研究

    lvxingqingwa.jpg

    背景介绍

    基于搜索引擎的产品推广策略

    • SEO:搜索引擎优化
      • 内容
      • 外链
    • SEM:搜索引擎营销

    搜索引擎优化的意义

    搜索引擎作为传统互联网的主要数据源,在信息传播过程中占有重要地位
    个人发布信息被搜索引擎收录、展示,可以引来流量,以较低成本实现产品推广
    

    搜索引擎优化途径:

    在搜索引擎可以检索到的各种公开社区发布文章,为自己的产品引流。
    如:论坛社区、问答、贴吧、博客、视频、自媒体等等
    

    游戏产品的搜索引擎推广策略

    • 排名分析
      • 选择什么渠道?(在哪儿发软文)
      • 选择相关内容搜索排名靠前的网站发布信息
    • 流量监测
      • 发布信息时间?
      • 监测不同网站流量效果,调整推广渠道
    • 内容设计(标题)
      • 发布信息标题和内容的设计
      • 精心设计标题,吸引用户点击

    2018年1-2月最火的游戏:旅行青蛙

    • 短时间内爆发,1月份iOS中国区下载总榜第一名

    • 以旅行青蛙游戏为例,研究它在搜索引擎平台的推广过程

    qushi.png

    游戏介绍

    • 游戏情况
      • 《旅行青蛙》是由游戏公司HIT-POINT开发的休闲小游戏,一款放置类型手游
    • 游戏内容
      • 玩家通过收集三叶草去商城买东西,青蛙带着这些东西出门旅行,旅行途中拍照片邮寄回来
    • 社会反响
      • 这款游戏顺应了广大青年的佛系情感述求。成为社交圈刷屏的现象级游戏,产生了巨大的社会影响

    推广策略研究

    流行的引爆取决于三类人的先后贡献
                    
                    --- 《引爆点》
    

    任何一场潮流到来时,总有几个关键的人物,他们独有的社会关系和其他特点,如激情和个人魅力,能够快速将信息在一定范围散布开来。

    具体来说。流行的引爆取决于三类人的先后贡献,如果在引爆潮流的不同时期,找准人群中的个别关键人物,利用他们来传播信息,就能点燃潮流

    流行引爆的三个不同时期:

    • 前期:内行(专业人士,产生信息)

      • 某一领域有丰富知识的权威人士
      • 在前期实现原始信息的产生
      • 内行专业且乐于讨论分享,但没有很好的说服力
      • ----专业社区,专业圈子,如某软件或游戏等产品论坛
    • 中期:联系员(桥梁,从专业小圈子介绍传播到大众圈)

      • 什么人都认识的交际人才
      • 其人际和社会关系可同时涉及几种不同领域
      • 联系员能够将信息从某固定小圈子散布到其他更大的领域
      • ----行业社区、行业圈子,如互联网社区、帝吧、虎扑、知乎,原创自媒体
    • 后期:推销员(口耳相传,扩散,引爆)

      • 对信息领域未必了解,但具有说服力
      • 决定了信息传播的“最后一公里”
      • 推销员使信息病毒式扩散,实现最终引爆
      • ----大众社区,大众圈子,如各种自媒体、微博、微信朋友圈,腾讯网易新浪搜狐等传统媒体、报纸电视广播等

    举例:中文互联网流行词或梗的流行全过程

    如:“六学”

    直播 -> 微博,公众号,抖音,知乎、B站 -> 网易搜狐新浪腾讯,电视节目 -> 春晚

    数据获取

    具体实施:

    根据百度指数热门程度直观分析,
    抓取百度新闻 旅行青蛙 (按内容查询)关键字的文字标题和相关信息,
    时间从 2018-1-15左右到2018-2-18日左右
        目前是:新闻页码11-36,每页20条,一共27页
    

    数据获取完成,详见附录

    数据规整

    import numpy as np
    import matplotlib.pyplot as plt
    import pandas as pd
    
    # plt.style.use('seaborn')
    plt.rcParams['font.family'] = ['Arial Unicode MS', 'Microsoft Yahei', 'SimHei', 'sans-serif'] 
    

    读入百度指数数据

    baidu = pd.read_csv(
        'data/baidu_index.csv',
        parse_dates=['百度指数'],
        index_col='Unnamed: 0',  # 将某列设为行索引
    )
    baidu.head()
    
    image.png
    baidu.info()
    
    <class 'pandas.core.frame.DataFrame'>
    Index: 35 entries, 2018-01-15 to 2018-02-18
    Data columns (total 1 columns):
    百度指数    35 non-null object
    dtypes: object(1)
    memory usage: 560.0+ bytes
    

    读入爬虫抓取新闻数据

    content = pd.read_csv(
        'data/content.csv',
    #     parse_dates={'s': ['date','time']},  # 将两列合并解析为时间格式,自定义列名,为配合百度指数时间,这里不合并
        parse_dates=['date'],
        
    ).set_index('date').sort_index()  # 将date2设为行索引,并排序
    
    content.head()
    
    image.png
    # 只保留2列做分析
    content = content[['source', 'title']]
    content.head()
    
    image.png
    content.tail()
    
    image.png
    baidu.info()
    
    <class 'pandas.core.frame.DataFrame'>
    Index: 35 entries, 2018-01-15 to 2018-02-18
    Data columns (total 1 columns):
    百度指数    35 non-null object
    dtypes: object(1)
    memory usage: 560.0+ bytes
    

    百度指数列错误,改为整型

    bindex = baidu['百度指数'].astype(np.int)
    bindex.head()
    
    2018-01-15     5408
    2018-01-16    10007
    2018-01-17    17817
    2018-01-18    39514
    2018-01-19    82117
    Name: 百度指数, dtype: int32
    
    bindex.describe()
    
    count        35.000000
    mean     224537.942857
    std      252476.209422
    min        5408.000000
    25%       46004.500000
    50%      120038.000000
    75%      310564.500000
    max      858690.000000
    Name: 百度指数, dtype: float64
    
    content.info()
    
    <class 'pandas.core.frame.DataFrame'>
    DatetimeIndex: 503 entries, 2017-09-07 to 2018-02-23
    Data columns (total 2 columns):
    source    503 non-null object
    title     503 non-null object
    dtypes: object(2)
    memory usage: 11.8+ KB
    
    content.describe()
    
    image.png

    新闻数据正常

    合并百度指数和百度新闻两表

    bindex.head()
    
    2018-01-15     5408
    2018-01-16    10007
    2018-01-17    17817
    2018-01-18    39514
    2018-01-19    82117
    Name: 百度指数, dtype: int32
    
    content.head()
    
    image.png
    content2 = content.join(bindex).dropna()
    content2.head()
    
    image.png
    content2.info()
    
    <class 'pandas.core.frame.DataFrame'>
    DatetimeIndex: 485 entries, 2018-01-17 to 2018-02-18
    Data columns (total 3 columns):
    source    485 non-null object
    title     485 non-null object
    百度指数      485 non-null float64
    dtypes: float64(1), object(2)
    memory usage: 15.2+ KB
    
    content2.shape
    
    (485, 3)
    

    由于新闻数据时间范围比指数数据大,所以合并后数据应该有缺失值,将百度指数列没有的日期行删除

    content3 = content2.drop('百度指数', axis=1)
    content3['baidu_index'] = content2['百度指数'].astype(np.int)
    content3.head()
    
    image.png
    content3.info()
    
    <class 'pandas.core.frame.DataFrame'>
    DatetimeIndex: 485 entries, 2018-01-17 to 2018-02-18
    Data columns (total 3 columns):
    source         485 non-null object
    title          485 non-null object
    baidu_index    485 non-null int32
    dtypes: int32(1), object(2)
    memory usage: 23.3+ KB
    

    保存数据

    content3.to_csv('data/content3.csv') 
    

    数据规整完成


    读取数据

    content3 = pd.read_csv(
        'data/content3.csv',
        parse_dates=['Unnamed: 0'],
        
    ).set_index('Unnamed: 0')  # 将Unnamed: 0设为行索引
    
    content3.index.name = 'date'
    content3.head()
    
    image.png
    content3.info()
    
    <class 'pandas.core.frame.DataFrame'>
    DatetimeIndex: 485 entries, 2018-01-17 to 2018-02-18
    Data columns (total 3 columns):
    source         485 non-null object
    title          485 non-null object
    baidu_index    485 non-null int64
    dtypes: int64(1), object(2)
    memory usage: 15.2+ KB
    

    数据分析


    指标计算:渠道分析(新闻源)

    自定义指标

    source列为搜索引擎推广渠道,我们按照理论将其分为:

    * 前期:内行
    * 中期:联系员
    * 后期:推销员
    

    三类

    然后统计不同渠道的新闻数量

    content3.head()
    
    image.png

    查询所有新闻源和他们发布的文章数

    category = content3.groupby('source').size().sort_values(ascending=False)
    category
    
    category[category >= 8]  # 只需要文章数大于等于8的新闻源
    
    source
    蚕豆网        72
    九游网        61
    太平洋电脑网     43
    闽南网        32
    站长之家       27
    爪游控        19
    Techweb    17
    手机游戏网      15
    新浪新闻       13
    站长网        13
    尚之潮        12
    新浪         10
    凤凰网         9
    dtype: int64
    

    手动整理的三个时期典型网站

    • 前期:蚕豆网,九游网,爪游控,手机游戏网,
    • 中期:站长之家,Techweb,站长网,
    • 后期:太平洋电脑网,闽南网,新浪新闻,尚之潮,新浪,凤凰网

    增加新列:三类时期

    content3.loc[content3['source'].isin(['蚕豆网','九游网','爪游控','手机游戏网'])]
    content3.loc[content3['source'].isin(['蚕豆网','九游网','爪游控','手机游戏网']), 'period'] = 1
    
    content3.loc[content3['source'].isin(['站长之家','Techweb','站长网']), 'period'] = 2
    content3.loc[content3['source'].isin(['太平洋电脑网','闽南网','新浪新闻','尚之潮','新浪','凤凰网']), 'period'] = 3
    
    content3.head()
    
    image.png
    content3.info()
    
    <class 'pandas.core.frame.DataFrame'>
    DatetimeIndex: 485 entries, 2018-01-17 to 2018-02-18
    Data columns (total 4 columns):
    source         485 non-null object
    title          485 non-null object
    baidu_index    485 non-null int64
    period         343 non-null float64
    dtypes: float64(1), int64(1), object(2)
    memory usage: 28.9+ KB
    
    # 去除缺失值行
    content4 = content3.dropna().drop('period', axis=1)
    content4['period'] = content3.dropna()['period'].astype(np.int)  # 列改为整型
    content4.head()
    
    image.png
    content4.info()
    
    <class 'pandas.core.frame.DataFrame'>
    DatetimeIndex: 343 entries, 2018-01-17 to 2018-02-18
    Data columns (total 4 columns):
    source         343 non-null object
    title          343 non-null object
    baidu_index    343 non-null int64
    period         343 non-null int32
    dtypes: int32(1), int64(1), object(2)
    memory usage: 22.1+ KB
    

    指标:通过交叉表计算每种类别下的网站新闻量排名

    best = pd.crosstab(content4.source, content4.period)
    best
    
    image.png

    前期新闻源发帖量排名

    best[1].sort_values(ascending=False)
    
    # 去掉发帖量为0的数据
    b1 = best[1][best[1] > 0].sort_values(ascending=False)
    b1
    
    source
    蚕豆网      72
    九游网      61
    爪游控      19
    手机游戏网    15
    Name: 1, dtype: int64
    
    b1.plot.bar()
    
    <matplotlib.axes._subplots.AxesSubplot at 0x9be1ac8>
    
    output_52_1.png

    中期新闻源发帖量排名

    b2 = best[2][best[2] > 0].sort_values(ascending=False)
    b2
    
    source
    站长之家       27
    Techweb    17
    站长网        13
    Name: 2, dtype: int64
    
    b2.plot.bar()
    
    <matplotlib.axes._subplots.AxesSubplot at 0x9dd7128>
    
    output_55_1.png

    后期新闻源发帖量排名

    b3 = best[3][best[3] > 0].sort_values(ascending=False)
    b3
    
    source
    太平洋电脑网    43
    闽南网       32
    新浪新闻      13
    尚之潮       12
    新浪        10
    凤凰网        9
    Name: 3, dtype: int64
    
    b3.plot.bar()
    
    <matplotlib.axes._subplots.AxesSubplot at 0x9e37518>
    
    output_58_1.png

    查询每天的百度指数

    baidu_index = content4.groupby(content4.index)['baidu_index'].max()
    baidu_index
    
    date
    2018-01-17     17817
    2018-01-18     39514
    2018-01-19     82117
    2018-01-20    140768
    2018-01-21    298637
    2018-01-22    406072
    2018-01-23    677541
    2018-01-24    858690
    2018-01-25    839792
    2018-01-26    744390
    2018-01-27    653541
    2018-01-28    496701
    2018-01-29    390412
    2018-01-30    322492
    2018-01-31    256334
    2018-02-01    212914
    2018-02-02    180933
    2018-02-03    157411
    2018-02-04    140104
    2018-02-05    120038
    2018-02-06    125914
    2018-02-07    105679
    2018-02-08     88426
    2018-02-09     75185
    2018-02-10     66567
    2018-02-12     54812
    2018-02-13     49241
    2018-02-18     34388
    Name: baidu_index, dtype: int64
    
    baidu_index.shape  # 数据规整以后,35天指数变成28天
    
    (28,)
    

    按时间行索引分组聚合求每个分类下 每天的新闻数

    三个时期,每个时期 每天 发布新闻的个数

    content4.head()
    
    period1 = content4[content4['period'] == 1]  # 前期的所有数据
    period1
    period1Count = period1.groupby(period1.index).size()  # 前期,每天 发布的新闻数量
    period1Count
    
    period2 = content4[content4['period'] == 2]  # 中期的所有数据
    period2
    period2Count = period2.groupby(period2.index).size()  # 中期,每天 发布的新闻数量
    period2Count
    
    period3 = content4[content4['period'] == 3]  # 后期的所有数据
    period3
    period3Count = period3.groupby(period3.index).size()  # 后期,每天 发布的新闻数量
    period3Count
    
    date
    2018-01-17     2
    2018-01-18     1
    2018-01-19     3
    2018-01-20     5
    2018-01-21     8
    2018-01-22     6
    2018-01-23     6
    2018-01-24    16
    2018-01-25    12
    2018-01-26     9
    2018-01-27     7
    2018-01-28     5
    2018-01-29     4
    2018-01-30     8
    2018-01-31    16
    2018-02-01     3
    2018-02-02     1
    2018-02-05     1
    2018-02-06     1
    2018-02-07     2
    2018-02-08     1
    2018-02-09     1
    2018-02-10     1
    dtype: int64
    

    数据可视化

    三种类别的推广渠道 随时间发展 对百度指数热度的贡献趋势

    • 可视化:搜索引擎推广渠道VS百度指数,比较对照
    • 取三类网站新闻数量随时间变化画三条折线图,背景叠加百度指数柱状图
    • 主要看不同类别折线的峰值出现时间(先后代表三类过程)
    baidu_index.index
    
    DatetimeIndex(['2018-01-17', '2018-01-18', '2018-01-19', '2018-01-20',
                   '2018-01-21', '2018-01-22', '2018-01-23', '2018-01-24',
                   '2018-01-25', '2018-01-26', '2018-01-27', '2018-01-28',
                   '2018-01-29', '2018-01-30', '2018-01-31', '2018-02-01',
                   '2018-02-02', '2018-02-03', '2018-02-04', '2018-02-05',
                   '2018-02-06', '2018-02-07', '2018-02-08', '2018-02-09',
                   '2018-02-10', '2018-02-12', '2018-02-13', '2018-02-18'],
                  dtype='datetime64[ns]', name='date', freq=None)
    
    plt.figure(figsize=(18, 10))
    
    plt.bar(baidu_index.index, baidu_index/30000, alpha=0.2, label='百度指数')
    
    period1Count.plot(label='前期:内行')
    period2Count.plot(label='中期:联系员')
    period3Count.plot(label='后期:推销员')
    
    # 标识三个时期的典型特征
    plt.scatter(['2018-01-20', '2018-01-25', '2018-01-30'], [5, 12, 13], s=6000, alpha=0.2, color='r')
    
    plt.xticks(baidu_index.index)
    plt.legend()
    plt.grid(linewidth=0.2, alpha=0.3)
    
    plt.show()
    
    output_66_0.png

    结论:

    • 呈现明显的前、中、后期发展趋势
    • 数据验证偏差:
      • 可能因为新闻源分类错误,
      • 更大的原因:数据搜集不完整,如缺乏其他重要渠道数据(APP市场、微博、微信朋友圈等)

    流量监测

    指标:交叉表实现:各个分类下的网站,每天发帖量

    # 每个分类下的所有新闻源
    period1.head()
    period2.head()
    period3.head()
    
    image.png
    period1Cross = pd.crosstab(period1.index, period1.source)
    period1Cross
    
    period2Cross = pd.crosstab(period2.index, period2.source)
    period2Cross
    
    period3Cross = pd.crosstab(period3.index, period3.source)
    period3Cross
    
    image.png
    image.png

    下面分别分析三个时期的渠道情况

    前期各网站发帖数量趋势

    内行:

    • 前期渠道:游戏网站(专业社区类)
    • 作用:信息源,提供原始信息
    • 游戏网站内部,行家们进行信息的碰撞、交互和传递,形成原始信息
    period1Cross.plot(figsize=(18, 10))
    plt.scatter(['2018-01-22'], [12], s=6000, alpha=0.2, color='r')
    plt.bar(baidu_index.index, baidu_index/60000, alpha=0.2, label='百度指数')
    
    <BarContainer object of 28 artists>
    
    output_72_1.png

    中期各网站发帖数量趋势

    联系员:

    • 中期渠道:一些通用和专业结合的社区
    • 作用:粘合剂:连接内行与推销员
    • 借助百度搜索的独特优势,将信息从内行传递给推销员
    period2Cross.plot(figsize=(18, 10))
    plt.scatter(['2018-01-24'], [5], s=6000, alpha=0.2, color='r')
    plt.bar(baidu_index.index, baidu_index/140000, alpha=0.2, label='百度指数')
    
    <BarContainer object of 28 artists>
    
    output_74_1.png

    后期各网站发帖数量趋势

    推销员:

    • 后期渠道:大众新闻网站、自媒体,包括新闻、视频、社交媒体等
    • 作用:完成最后接力,实现引爆
    • 标记引爆点,使信息病毒式传播
    period3Cross.plot(figsize=(18, 10))
    plt.scatter(['2018-01-31'], [14], s=6000, alpha=0.2, color='r')
    plt.bar(baidu_index.index, baidu_index/40000, alpha=0.2, label='百度指数')
    
    <BarContainer object of 28 artists>
    
    output_76_1.png

    内容设计

    指标和可视化

    各时期新闻标题设计:关键字查看和可视化

    分词,计算词频,绘制词云

    import jieba
    import jieba.analyse
    

    合并三种类别来源的title为字符串

    period1Title = ' '.join(period1['title'])
    period1Title
    
    period2Title = ' '.join(period2['title'])
    period2Title
    
    period3Title = ' '.join(period3['title'])
    period3Title
    
      '旅行青蛙怎么玩?青蛙旅行攻略图文教程(附翻译) 旅行青蛙怎么玩?青蛙旅行攻略图文教程(附翻译) 旅行青蛙可以设置成中文吗?旅行青蛙中文翻译 旅行青蛙攻略中文翻译 旅行青蛙攻中文图文攻略 青蛙旅行四叶草怎么获得?青蛙旅行四叶草什么时候收割? 旅行青蛙称号效果是什么 旅行青蛙称号怎么更改 旅行青蛙怎么设置中文语言方法介绍 旅行青蛙图文翻译分享 旅行青蛙包裹在哪里 旅行青蛙包裹怎么添加物品 旅行青蛙无法连接到网络 无法连接到网络解决方法 旅行青蛙朋友出现时间 蜗牛乌龟蜜蜂出现时间 旅行青蛙怎么玩?在旅行青蛙游戏里要做什么? 旅行青蛙怎么给小青蛙改名字 在哪里改名 旅行青蛙小青蛙是什么时候回来 小青蛙回家时间 旅行青蛙小青蛙多久出门一次?要什么时候才会出门 旅行青蛙青蛙可以带回来什么 青蛙带回道具一览 正在阅读:旅行青蛙攻略详情 青蛙游戏新手玩法攻略 旅行青蛙版下载 旅行青蛙中文版在哪下 正在阅读:旅行青蛙相似游戏推荐 类似旅行青蛙游戏有哪些旅行青蛙... 正在阅读:旅行青蛙攻略 旅行青蛙游戏怎么准备背包 佛系的你在养佛系的蛙?《旅行青蛙》让女玩家抢着 “当妈” 旅行青蛙存档没了怎么办?旅行青蛙存档消失可以恢复吗? 旅行青蛙iOS汉化版下载 旅行青蛙中文版下载地址 旅行青蛙为什么火?养青蛙的游戏叫什么名字?'
    

    分词

    # 1:应用自定义词典
    
    with open('jieba/custom.txt', 'r', encoding='utf-8') as f:
        b = f.read()
    b = b.split('\n')
    b
    
    jieba.load_userdict(b)  # 应用自定义词典
    
    Building prefix dict from the default dictionary ...
    Loading model from cache D:\Personal\Temp\jieba.cache
    Loading model cost 1.302 seconds.
    Prefix dict has been built succesfully.
    
    # 2:分词
    period1F = jieba.lcut(period1Title)
    period1F
    
    period2F = jieba.lcut(period2Title)
    period2F
    
    period3F = jieba.lcut(period3Title)
    period3F
    
    ['旅行青蛙',
     '怎么',
     '玩',
     '?',
     '青蛙',
     '旅行',
     '攻略',
     '图文',
     '教程',
     '(',
     '附',
     '翻译',
     ')',
     ' ',
     '旅行青蛙',
     '怎么',
     '玩',
     '?',
     '青蛙',
     '旅行',
     '攻略',
     '图文',
     '教程',
     '(',
     '附',
     '翻译',
     ')',
     ' ',
     '旅行青蛙',
     '可以',
     '设置',
     '成',
     '中文',
     '吗',
     '?',
     '旅行青蛙',
     '中文翻译',
     ' ',
     '旅行青蛙',
     '攻略',
     '中文翻译',
     ' ',
     '旅行青蛙',
     '攻',
     '中文',
     '图文',
     '攻略',
     ' ',
     '青蛙',
     '旅行',
     '四叶草',
     '怎么',
     '获得',
     '?',
     '青蛙',
     '旅行',
     '四叶草',
     '什么',
     '时候',
     '收割',
     '?',
     ' ',
     '旅行青蛙',
     '称号',
     '效果',
     '是',
     '什么',
     ' ',
     '旅行青蛙',
     '称号',
     '怎么',
     '更改',
     ' ',
     '旅行青蛙',
     '怎么',
     '设置',
     '中文',
     '语言',
     '方法',
     '介绍',
     ' ',
     '旅行青蛙',
     '图文',
     '翻译',
     '分享',
     ' ',
     '旅行青蛙',
     '包裹',
     '在',
     '哪里',
     ' ',
     '旅行青蛙',
     '包裹',
     '怎么',
     '添加',
     '物品',
     ' ',
     '旅行青蛙',
     '无法',
     '连接',
     '到',
     '网络',
     ' ',
     '无法',
     '连接',
     '到',
     '网络',
     '解决',
     '方法',
     ' ',
     '旅行青蛙',
     '朋友',
     '出现',
     '时间',
     ' ',
     '蜗牛',
     '乌龟',
     '蜜蜂',
     '出现',
     '时间',
     ' ',
     '旅行青蛙',
     '怎么',
     '玩',
     '?',
     '在',
     '旅行青蛙',
     '游戏',
     '里',
     '要',
     '做',
     '什么',
     '?',
     ' ',
     '旅行青蛙',
     '怎么',
     '给',
     '小',
     '青蛙',
     '改名字',
     ' ',
     '在',
     '哪里',
     '改名',
     ' ',
     '旅行青蛙',
     '小',
     '青蛙',
     '是',
     '什么',
     '时候',
     '回来',
     ' ',
     '小',
     '青蛙',
     '回家',
     '时间',
     ' ',
     '旅行青蛙',
     '小',
     '青蛙',
     '多久',
     '出门',
     '一次',
     '?',
     '要',
     '什么',
     '时候',
     '才',
     '会',
     '出门',
     ' ',
     '旅行青蛙',
     '青蛙',
     '可以',
     '带',
     '回来',
     '什么',
     ' ',
     '青蛙',
     '带回',
     '道具',
     '一览',
     ' ',
     '正在',
     '阅读',
     ':',
     '旅行青蛙',
     '攻略',
     '详情',
     ' ',
     '青蛙',
     '游戏',
     '新手',
     '玩法',
     '攻略',
     ' ',
     '旅行青蛙',
     '版',
     '下载',
     ' ',
     '旅行青蛙',
     '中文版',
     '在',
     '哪下',
     ' ',
     '正在',
     '阅读',
     ':',
     '旅行青蛙',
     '相似',
     '游戏',
     '推荐',
     ' ',
     '类似',
     '旅行青蛙',
     '游戏',
     '有',
     '哪些',
     '旅行青蛙',
     '...',
     ' ',
     '正在',
     '阅读',
     ':',
     '旅行青蛙',
     '攻略',
     ' ',
     '旅行青蛙',
     '游戏',
     '怎么',
     '准备',
     '背包',
     ' ',
     '佛系',
     '的',
     '你',
     '在',
     '养佛系',
     '的',
     '蛙',
     '?',
     '《',
     '旅行青蛙',
     '》',
     '让',
     '女',
     '玩家',
     '抢',
     '着',
     ' ',
     '“',
     '当妈',
     '”',
     ' ',
     '旅行青蛙',
     '存档',
     '没',
     '了',
     '怎么办',
     '?',
     '旅行青蛙',
     '存档',
     '消失',
     '可以',
     '恢复',
     '吗',
     '?',
     ' ',
     '旅行青蛙',
     'iOS',
     '汉化版',
     '下载',
     ' ',
     '旅行青蛙',
     '中文版',
     '下载',
     '地址',
     ' ',
     '旅行青蛙',
     '为什么',
     '火',
     '?',
     '养',
     '青蛙',
     '的',
     '游戏',
     '叫',
     '什么',
     '名字',
     '?',
     ' ',
     '微信',
     '朋友圈',
     '晒养',
     '蛙',
     '游戏',
     '背后',
     ' ',
     '为什么',
     '旅行青蛙',
     '最近',
     '这么',
     '红',
     ' ',
     '旅行青蛙',
     '多久',
     '回来',
     '?',
     '旅行青蛙',
     '如何',
     '让',
     '青蛙',
     '早点',
     '回家',
     '?',
     ' ',
     '刷屏',
     '的',
     '旅行青蛙',
     '魔性',
     '在',
     '哪里',
     '?',
     '主角',
     '又',
     '为何',
     '是',
     '只',
     '蛙',
     '?',
     ' ',
     'ios',
     '版',
     '旅行青蛙',
     '在',
     '哪里',
     '有',
     ' ',
     '苹果',
     '手机',
     '怎么',
     '在',
     '商店',
     '搜索',
     '下载',
     '旅行青蛙',
     ' ',
     '正在',
     '阅读',
     ':',
     '旅行青蛙',
     '照片',
     '真实',
     '场景',
     '对照',
     ':',
     '青蛙',
     '旅行',
     '照片',
     '原型',
     '图',
     ' ',
     '旅行青蛙',
     ':',
     '植物',
     '知多少',
     ' ',
     '正在',
     '阅读',
     ':',
     '旅行青蛙',
     '照片',
     '真实',
     '场景',
     '对照',
     ':',
     '青蛙',
     '旅行',
     '照片',
     '原型',
     '图',
     ' ',
     '旅行青蛙',
     '蜗牛',
     '蜜蜂',
     '乌龟',
     '爱',
     '吃',
     '什么',
     ' ',
     '旅行青蛙',
     '蜗牛',
     '怎么',
     '喂',
     ' ',
     '旅行青蛙',
     '为什么',
     '是',
     '佛系',
     '游戏',
     ' ',
     '性冷淡',
     '风',
     '简直',
     '是',
     '一股',
     '清流',
     ' ',
     '旅行青蛙',
     '道具',
     '作用',
     ' ',
     '旅行青蛙',
     '道',
     '道具',
     '攻略',
     '(',
     '附',
     '作用',
     '介绍',
     ')',
     ' ',
     '旅行青蛙',
     '游戏',
     '都',
     '是',
     '哪些',
     '人',
     '在',
     '玩',
     ' ',
     '玩',
     '旅行青蛙',
     '人',
     '多少',
     '有点',
     '“',
     '病',
     '”',
     '?',
     ' ',
     '和',
     '旅行青蛙',
     '类似',
     '的',
     '游戏',
     '有',
     '哪些',
     ' ',
     '这',
     '几款',
     '也',
     '都',
     '很',
     '可爱',
     ' ',
     '旅行青蛙',
     '更改',
     '手机',
     '时间',
     '有用吗',
     ' ',
     '怎么',
     '修改',
     '调',
     '青蛙',
     '旅行',
     '时间',
     '攻略',
     ' ',
     '为什么',
     '大家',
     '都',
     '爱玩',
     '养',
     '青蛙',
     ' ',
     '旅行青蛙',
     '火爆',
     '背后',
     '原因',
     '有',
     '什么',
     '背景',
     '呢',
     ' ',
     '玩',
     '旅行青蛙',
     '的',
     '人',
     '注意',
     ' ',
     '这样',
     '操作',
     '或致',
     '手机',
     '变',
     '“',
     '板砖',
     '”',
     ' ',
     '孤独',
     '的',
     '“',
     '旅行青蛙',
     '”',
     ' ',
     '其实',
     '并',
     '不是',
     '你',
     '想要',
     '的',
     '样子',
     ' ',
     '《',
     '旅行青蛙',
     '》',
     '为什么',
     '能',
     '这么',
     '火',
     '?',
     ' ',
     '山寨',
     '旅行青蛙',
     'AppStore',
     '下载',
     '第一',
     ' ',
     '只会',
     '跳',
     '一',
     '跳',
     '还',
     '收费',
     ' ',
     '刷',
     '爆',
     '朋友圈',
     '的',
     '佛系',
     '游戏',
     '《',
     '旅行青蛙',
     '》',
     '为什么',
     '这么',
     '火',
     '?',
     ' ',
     '渣',
     '蛙',
     '是',
     '什么',
     '意思',
     ' ',
     '旅行青蛙',
     '归来',
     '时',
     '为何',
     '戴着',
     '别人',
     '的',
     '围巾',
     ' ',
     '人民日报',
     '官微评',
     '旅行青蛙',
     ':',
     '蛙',
     '儿子',
     '不',
     '正是',
     '每个',
     '游子',
     '?',
     ' ',
     '旅行青蛙',
     '的',
     '青蛙',
     '会',
     '死',
     '吗',
     '揭晓',
     ' ',
     '撞死',
     '照片',
     '系',
     '网友',
     '恶搞',
     ' ',
     '揭秘',
     '旅行青蛙',
     '的',
     '真相',
     ' ',
     '结局',
     '让',
     '人',
     '猝不及防',
     ' ',
     '旅行青蛙',
     '为什么',
     '这么',
     '火',
     ' ',
     '妹子',
     '们',
     '的',
     '男朋友',
     '也',
     '开启',
     '了',
     '养蛙',
     '模式',
     ' ',
     '旅行青蛙',
     '照片',
     '明信片',
     '大全',
     ' ',
     '旅行青蛙',
     '写真',
     '照片',
     '汇总',
     '一览',
     ' ',
     '中国',
     '消防',
     ':',
     '“',
     '旅行青蛙',
     '”',
     '家',
     '很',
     '危险',
     ' ',
     '灭火器',
     '都',
     '没有',
     ' ',
     '“',
     '旅行青蛙',
     '”',
     '刷屏',
     '透露',
     '二次元',
     '游戏',
     '市场前景',
     '可',
     '期',
     ' ',
     '"',
     '旅行青蛙',
     '"',
     '出',
     '中文版',
     '了',
     '?',
     '网友',
     ':',
     '别闹',
     '这是',
     '青蛙',
     '版',
     '"',
     '跳',
     '一',
     '跳',
     '"',
     '!',
     ' ',
     '旅行青蛙',
     '手游',
     '为什么',
     '这么',
     '火',
     ' ',
     '苹果',
     'APP',
     ' ',
     'Store',
     '下载量',
     '排名榜',
     '第一',
     ' ',
     '旅行青蛙',
     '为什么',
     '不',
     '回家',
     ' ',
     '不',
     '回家',
     '怎么',
     '解决办法',
     ' ',
     '类似',
     '旅行青蛙',
     '的',
     '游戏',
     '有',
     '哪些',
     ' ',
     '类似',
     '青蛙',
     '旅行',
     '好玩',
     '手游',
     '推荐',
     ' ',
     '旅行青蛙',
     '瞬间',
     '爆红',
     ' ',
     '这',
     '背后',
     '的',
     '逻辑',
     '究竟',
     '是',
     '啥',
     '?',
     ' ',
     '网红',
     '游戏',
     '“',
     '旅行青蛙',
     '”',
     '外挂',
     '藏',
     '风险',
     ' ',
     '下载',
     '山寨',
     'APP',
     '小心',
     '被',
     '扣款',
     ' ',
     '旅行青蛙',
     '东北地区',
     '怎么',
     '去',
     ' ',
     '旅行青蛙',
     '东北',
     '去法',
     '位置',
     '坐标',
     ' ',
     '旅行青蛙',
     '时间',
     '怎么',
     '调',
     ' ',
     '怎么',
     '跳过',
     '等待时间',
     '穿越',
     '到',
     '未来',
     ' ',
     '旅行青蛙',
     '道具',
     '都',
     '有',
     '什么',
     '用',
     ' ',
     '旅行青蛙',
     '碗',
     '和',
     '灯',
     '作用',
     '介绍',
     ' ',
     '旅行青蛙',
     '会',
     '死',
     '是',
     '真的',
     '吗',
     ' ',
     '肢解',
     '车祸',
     '图片',
     '全是',
     '博',
     '眼球',
     ' ',
     '旅行青蛙',
     '被车',
     '压死',
     '是',
     '真的',
     '吗',
     ' ',
     '网友',
     '恶意',
     'P',
     '图',
     '造谣',
     '遭吐槽',
     ' ',
     '旅行青蛙',
     '火',
     '了',
     '它',
     '究竟',
     '击中',
     '了',
     '人们',
     '内心',
     '的',
     '哪些',
     '情愫',
     '?',
     ' ',
     '日本',
     '“',
     '旅行青蛙',
     '”',
     '登',
     '中国',
     '手机游戏',
     '排行榜',
     '首位',
     ' ',
     '俩',
     '月',
     '800',
     '万',
     '下载量',
     ' ',
     '旅行青蛙',
     '小',
     '青蛙',
     '呱呱',
     '写',
     '的',
     '日记',
     '可以',
     '看',
     '吗',
     ' ',
     '小',
     '青蛙',
     '日记',
     '一览',
     ' ',
     '旅行青蛙',
     '青蛙',
     '会',
     '死',
     '吗',
     ' ',
     '青蛙',
     '没有',
     '保护',
     '符会',
     '怎么样',
     ' ',
     '和',
     '旅行青蛙',
     '一个',
     '公司',
     '的',
     '游戏',
     '有',
     '哪些',
     ' ',
     '这',
     '款',
     '人气',
     '不输蛙',
     '儿子',
     ' ',
     '旅行青蛙',
     '走红',
     '这',
     '张图',
     '你',
     '可能',
     '没见',
     '过',
     ' ',
     '防火',
     '防爆',
     '救生',
     '看',
     '它',
     ' ',
     '旅行青蛙',
     '会',
     '饿死',
     '吗',
     ' ',
     '养',
     '青蛙',
     '一直',
     '不',
     '回来',
     '怎么办',
     '需要',
     '什么',
     '道具',
     ' ',
     '“',
     '旅行青蛙',
     '”',
     '是',
     '一场',
     '说走就走',
     '的',
     '旅行',
     '吗',
     '?',
     ' ',
     '《',
     '旅行青蛙',
     '》',
     '负责人',
     ':',
     '很',
     '惊讶',
     '游戏',
     '会',
     '在',
     '中国',
     '走红',
     ' ',
     '佛性',
     '游戏',
     '《',
     '旅行青蛙',
     '》',
     '为什么',
     '这么',
     '火',
     ' ',
     '旅行青蛙',
     '是',
     '哪个',
     '国家',
     '人',
     '制作',
     '的',
     ' ',
     '旅行青蛙',
     '是',
     '什么',
     ' ',
     '旅行青蛙',
     '商店',
     '13',
     '种',
     '道具',
     '用途',
     '属性',
     '介绍',
     ' ',
     '山寨',
     '版',
     '“',
     '旅行青蛙',
     '”',
     '被',
     '下架',
     ' ',
     '数千',
     '评论',
     '斥其',
     '“',
     '丢人',
     '”',
     ' ',
     '山寨',
     '版',
     '旅行青蛙',
     '遭下',
     '架',
     ' ',
     '一天',
     '收',
     '数千',
     '评论',
     '斥其',
     '丢人',
     ' ',
     '旅行青蛙',
     '桌面壁纸',
     '高清',
     '大图',
     ' ',
     '游戏',
     '《',
     '旅行青蛙',
     '》',
     ...]
    
    # 3:保存分词后的文本为文本文件,绘制词云用
    
    with open('data/period1Title.txt', 'w', encoding="utf-8")as f:
        f.write(' '.join(period1F))
        
    with open('data/period2Title.txt', 'w', encoding="utf-8")as f:
        f.write(' '.join(period2F))
        
    with open('data/period3Title.txt', 'w', encoding="utf-8")as f:
        f.write(' '.join(period3F))
    
    # 4:去停用词
    
    def stopw(period):
        # 载入停用词文件
        stopword = []
        with open('jieba/stopword.txt', 'r', encoding='utf-8') as f:
            for line in f.readlines():
                l = line.strip()
                if l == '\\n':
                    l = '\n'
                if l == '\\u3000':
                    l = '\u3000'
    
                stopword.append(l)
    
        stopword
    
    
        # 去停用词,第一步,求差集
        x = np.array(period)  # 将分好的词列表转为数组
        y = np.array(stopword)  # 将停用词转为数组
    
        z = x[~np.in1d(x, y)]  # x的元素是否包含于y
        z
    
        # 使用列表生成式实现
        k = [i for i in z if len(i) > 1]
        k
        
        return k
    
    
    # 计算词频并排序
    x1 = pd.DataFrame(stopw(period1F))  # 转为df格式
    period1C = pd.DataFrame(x1.groupby(0).size().sort_values(ascending=False))
    
    x2 = pd.DataFrame(stopw(period2F))  # 转为df格式
    period2C = pd.DataFrame(x2.groupby(0).size().sort_values(ascending=False))
    
    x3 = pd.DataFrame(stopw(period3F))  # 转为df格式
    period3C = pd.DataFrame(x3.groupby(0).size().sort_values(ascending=False))
    period3C
    
    0
    0
    旅行青蛙 153
    青蛙 40
    游戏 26
    攻略 13
    旅行 11
    道具 10
    阅读 9
    方法 8
    称号 7
    照片 7
    时间 7
    下载 6
    类似 6
    介绍 6
    中国 6
    蜗牛 6
    儿子 6
    回家 6
    一览 5
    真的 4
    山寨 4
    图文 4
    广告 4
    回来 4
    佛系 4
    蜜蜂 3
    手机 3
    多久 3
    网络 3
    解决 3
    ... ...
    朋友 1
    测试 1
    没见 1
    汉化版 1
    水印 1
    气候 1
    正确 1
    模式 1
    植物 1
    桌面壁纸 1
    样子 1
    板砖 1
    条件 1
    未来 1
    有用吗 1
    操作方法 1
    最长 1
    晒养 1
    早点 1
    日本 1
    无关 1
    旅途 1
    教学 1
    救生 1
    改名字 1
    改名 1
    改变命运 1
    收费 1
    收割 1
    1000 1

    306 rows × 1 columns

    # 5: 保存结果
    period1C.to_csv('data/keyword1.csv')
    period2C.to_csv('data/keyword2.csv')
    period3C.to_csv('data/keyword3.csv')
    

    词云绘制

    比表格高频词更直观

    from wordcloud import WordCloud
    from PIL import Image
    
    # 载入文本数据
    with open('data/period1Title.txt', 'r', encoding='utf-8') as f:
        period1Title = f.read()
    period1Title
    
    with open('data/period2Title.txt', 'r', encoding='utf-8') as f:
        period2Title = f.read()
    period2Title
    
    with open('data/period3Title.txt', 'r', encoding='utf-8') as f:
        period3Title = f.read()
    period3Title
    
      '旅行青蛙 怎么 玩 ? 青蛙 旅行 攻略 图文 教程 ( 附 翻译 )   旅行青蛙 怎么 玩 ? 青蛙 旅行 攻略 图文 教程 ( 附 翻译 )   旅行青蛙 可以 设置 成 中文 吗 ? 旅行青蛙 中文翻译   旅行青蛙 攻略 中文翻译   旅行青蛙 攻 中文 图文 攻略   青蛙 旅行 四叶草 怎么 获得 ? 青蛙 旅行 四叶草 什么 时候 收割 ?   旅行青蛙 称号 效果 是 什么   旅行青蛙 称号 怎么 更改   旅行青蛙 怎么 设置 中文 语言 方法 介绍   旅行青蛙 图文 翻译 分享   旅行青蛙 包裹 在 哪里   旅行青蛙 包裹 怎么 添加 物品   旅行青蛙 无法 连接 到 网络   无法 连接 到 网络 解决 方法   旅行青蛙 朋友 出现 时间   蜗牛 乌龟 蜜蜂 出现 时间   旅行青蛙 怎么 玩 ? 在 旅行青蛙 游戏 里 要 做 什么 ?   旅行青蛙 怎么 给 小 青蛙 改名字   在 哪里 改名   旅行青蛙 小 青蛙 是 什么 时候 回来   小 青蛙 回家 时间   旅行青蛙 小 青蛙 多久 出门 一次 ? 要 什么 时候 才 会 出门   旅行青蛙 青蛙 可以 带 回来 什么   青蛙 带回 道具 一览   正在 阅读 : 旅行青蛙 攻略 详情   青蛙 游戏 新手 玩法 攻略   旅行青蛙 版 下载   旅行青蛙 中文版 在 哪下   正在 阅读 : 旅行青蛙 相似 游戏 推荐   类似 旅行青蛙 游戏 有 哪些 旅行青蛙 ...   正在 阅读 : 旅行青蛙 攻略   旅行青蛙 游戏 怎么 准备 背包   佛系 的 你 在 养佛系 的 蛙 ? 《 旅行青蛙 》 让 女 玩家 抢 着   “ 当妈 ”   '
    
    # 读入停用词文件为列表
    with open('jieba/stopword.txt', 'r', encoding='utf-8') as f:
    #     print(f.read())
        s = f.read()
    stopword = s.split('\n')
    
    # stopword
    # 词云绘制时去停用词
    
    # 读取背景图
    alice_mask = np.array(Image.open("jieba/timg.jpg"))
    

    分词,提取高频词,绘制词云

    前期标题设计

    前期特点:攻略、问题相关,铺垫,技术型文章,比较硬

    period1C[:20]
    
    0
    0
    旅行青蛙 214
    青蛙 62
    下载 35
    攻略 26
    方法 22
    中文版 21
    游戏 21
    汉化版 19
    旅行 19
    蜗牛 18
    介绍 17
    中文 14
    回家 12
    食物 12
    喜欢 12
    一览 12
    出门 11
    翻译 11
    乌龟 11
    地址 10
    wordcloud = WordCloud(
        background_color='white',# 设置背景颜色
        max_words=30, # 设置最大现显示词数
        font_path="jieba/arial unicode ms.ttf",  # 字体,不设置则汉字乱码
        stopwords = stopword,  # 去停用词
        mask=alice_mask,  # 设置背景图片
    ).generate(period1Title)
    wordcloud
    
    plt.figure(figsize=(18, 10), dpi=300)
    plt.imshow(wordcloud, interpolation='bilinear') # 绘制数据内的图片,双线性插值绘图
    plt.axis("off") # 去掉坐标轴
    
    (-0.5, 499.5, 493.5, -0.5)
    
    output_95_1.png

    中期标题设计

    中期特点:内容相关,造势

    period2C[:20]
    
    0
    0
    旅行青蛙 74
    攻略 20
    青蛙 18
    游戏 15
    玩法 9
    一览 9
    图文 8
    详细 7
    中文 6
    汇总 6
    方法 5
    翻译 5
    回家 4
    大全 4
    汉化版 4
    称号 4
    时间 4
    旅行 4
    日语 3
    道具 3
    wordcloud = WordCloud(
        background_color='white',# 设置背景颜色
        max_words=30, # 设置最大现显示词数
        font_path="jieba/arial unicode ms.ttf",  # 字体,不设置则汉字乱码
        stopwords = stopword,  # 去停用词
        mask=alice_mask,  # 设置背景图片
    ).generate(period2Title)
    wordcloud
    
    plt.figure(figsize=(18, 10), dpi=300)
    plt.imshow(wordcloud, interpolation='bilinear') # 绘制数据内的图片,双线性插值绘图
    plt.axis("off") # 去掉坐标轴
    
    (-0.5, 499.5, 493.5, -0.5)
    
    output_98_1.png

    后期标题设计

    后期特点:标签相关,提供话题,如佛系、儿子、爆红等

    period3C[:20]
    
    0
    0
    旅行青蛙 153
    青蛙 40
    游戏 26
    攻略 13
    旅行 11
    道具 10
    阅读 9
    方法 8
    称号 7
    照片 7
    时间 7
    下载 6
    类似 6
    介绍 6
    中国 6
    蜗牛 6
    儿子 6
    回家 6
    一览 5
    真的 4
    wordcloud = WordCloud(
        background_color='white',# 设置背景颜色
        max_words=30, # 设置最大现显示词数
        font_path="jieba/arial unicode ms.ttf",  # 字体,不设置则汉字乱码
        stopwords = stopword,  # 去停用词
        mask=alice_mask,  # 设置背景图片
    ).generate(period3Title)
    wordcloud
    
    plt.figure(figsize=(18, 10), dpi=300)
    plt.imshow(wordcloud, interpolation='bilinear') # 绘制数据内的图片,双线性插值绘图
    plt.axis("off") # 去掉坐标轴
    
    (-0.5, 499.5, 493.5, -0.5)
    
    output_101_1.png

    总结建议

    游戏类产品搜索引擎推广建议

    • 渠道选取
      • 游戏专业社区
      • 互联网类社区
      • 通用社区,自媒体
    • 时间点选取
      • 前期
      • 中期
      • 后期
    • 标题设计
      • “攻略”铺垫
      • “内容”造势
      • “标签”话题

    时间点选取详细:

    • 内行
      • 前期铺垫
      • 在专业网站上发布游戏评测、软文等,提供下载、攻略、汇总、大全等
      • 吸引内行注意,激励其积极讨论
    • 联系员
      • 中期造势
      • 在IT、互联网类专业社区等搜索引擎检索信息源集中投放广告、发布软文
      • 使非内行开始接触游戏信息
    • 推销员
      • 后期话题
      • 制造话题,蹭热度,创造新鲜有趣、与众不同的游戏标签,在各大通用社区(新浪、网易、朋友圈、微博热搜)等火力全开
      • 利用黏性话题踢好临门最后一脚

    进阶完善内容

    • 新闻源分类:根据分析结果重新分类新闻源
    • 内容关键字:不使用词频,使用TF-IDF算法
    • 绘制词云时,将一些无用高频词,例如 旅行青蛙,去停用词
    • 可能的话,抓取其他新闻源数据,微博、公众号等等

    相关文章

      网友评论

        本文标题:产品推广策略数据分析 - 游戏为例

        本文链接:https://www.haomeiwen.com/subject/xloflqtx.html