system: [SYSTEM]

user: 5. 实证分析 (一) 数据的预处理和数据质量评估 1) 数据来源 本文中的数据来源于全国第四届应用统计案例大赛案例C：车企舆情正负面识别与预测。数据结构包括文章题目，文章内容，文章来源网站名称，文章网址和已经人工标注的舆论倾向，数据集已经被分为了训练集和预测集。 2) 数据预处理 通过所提供数据的数据结构，可以推测该数据是在疫情期间从车企相关网站上通过关键词进行爬虫获取的。从数据结构上推测，原始数据的第一列为获取文章的标题，本文将其命名为“title”，第二列为文章的主体，本文将其命名为“passage”，第三列为文章来源的网站名称，本文将其命名为“website”，第四列为文章的互联网协议地址，本文将其命名为“http”，最后一列是则是文章的舆论倾向变量，其中“1”代表该文章对车企具有正向舆论导向，“−1”表示该文章包含对于车企的负面评论，“0”代表该文章并不包含有关车企正面或鼓面的舆论，对于车企没有明确的情感倾向。 在网络爬虫中，由于网络信息的复杂性，可能造成所爬取的文本信息存在一定的问题，因此需要对爬取的数据进行一定的预处理。数据预处理共分以下几个步骤。 ① 案例中所给数据为csv格式，由于csv格式的文件是由逗号分隔，容易与文章的逗号混淆，因此需要先转存为excel文件，共得到99，842条数据。 ② 对于某些条目含有空值的数据，也进行删除处理，共删除含有空值的数据136条，剩余数据99，706条。 ③ 数据中有大量重复冗余数据，因此通过比对数据的文章标题，对于文章标题相同的多条数据，本文仅保存一条，删除其他数据。经过本步处理后还剩余69，825条数据。 ④ 文章内容中包含了大量的网址和数字，这对正负面舆论的识别并没有显著的影响，因此运用正则表达式对文章中的网址和数字进行识别和剔除。 ⑤ 最后，本文认为低于10个字符的文章对于车企正负面舆情的识别参考意义较小，因此将文章长度小于10个字符的数据进行删除，得到最终的数据共68，060条。 3) 数据质量评估 ① 数据完整性。训练集数据的数据完整性较好，在得到的99，842条数据中，仅有136条数据包含空值，有值率达到99.36%。但是，数据集并没有给出每一列数据所代表的具体含义，这对于数据的正确理解分析会造成一定的偏差。 ② 数据有效性。借助Python编程对训练集数据进行全局去重发现，数据集中含有29，881条重复冗余数据，冗余率高达30.00%。同时，文章字段数少于10个字符的可以认定为无效数据，这样的数据共有1765条，综上所述，有效数据仅占68.26%，这其实也是由于文本型数据的获取方式和复杂性所导致的。 ③ 数据覆盖率。经过处理后的训练集数据来源广泛，不仅千里马、广元汽车之家、伯乐二手车网等汽车行业媒体，而且包含新浪网、东方财富网、今日关注这些财经类、社会关注类网站和一些自媒体。 (二) 训练集数据的描述统计分析 1) 车企舆论倾向分布描述 使用python对处理后的车企舆情训练集数据舆论倾向分布进行统计，结果发现正面舆论新闻有9720条，中性舆论49，186条，负面舆论9154条，分布结果如图3所示： 图3. 训练集数据车企舆论倾向分布 在该分布图中，环形的宽度表示各舆情倾向的占比。可以看出，大部分网络文章对于车企行业没有明显的舆情倾向，持负面和正面舆情倾向的文章占比分别为13.45%和14.28%。车企可根据正负面舆情的相关方面，针对性地改进完善产品及服务。 在所给的训练集数据中，由于绝大部分文章没有明显的舆论倾向，因此在构建词频矩阵的时候，中性舆情文章的词汇特征会被较多提取，在进行模型学习时可能会造成中性舆情文章识别过度的问题，从而导致具有明显情感倾向的文章不容易被识别出来。 2) 分网站车企行业舆情倾向分布描述 我们还选择了数据来源最多的四家网站，以分析舆论倾向是否与来源网站有关。处理过后的训练集数据中有1370条来自“千里马”网站，通过图4可以看到，该网站舆论消息与总体舆论倾向基本保持一致，仍是以中性舆论居多；不同的是，负面舆论115条，占总数的8.39%；正面舆论只有32条，占比为2.34%。 图4. “千里马”网站车企舆论倾向分布 舆论来源第二多的网站是“广元新媒体”，共726条舆论数据。由图5可知，该网站的车企舆论分布倾向与总体分布倾向有较大的差异。其中，正面舆论484条，占比66.67%超过总数的一半；中性舆论只有37条，占总数5.10%，可以看出该网站的文章对于车企主要持正面态度。 图5. “广元新媒体”网站车企舆论倾向分布 选取四家车企舆论数量最多的网站进行对比，通过图6，我们发现：除“广元新媒体”以外，其他三家网站均是中性车企舆论最多，且占比均超过网站车企舆论总数的65%；“千里马”网站的负面舆论数量则相比正面舆论要多，其余三家则都是正面舆论数量多于负面，可以看出不同网络来源的文章之间的舆论倾向分布具有较大差异，为进一步验证本文的观点，需要做简单的方差分析进行检验。 图6. “千里马”网站车企舆论倾向分布 用python对四个网站的舆论分布进行单因素方差分析，得到结果如表1所示。由表1可知方差分析的F统计量为67.9009，相伴概率P值远远小于显著性水平0.05，因此拒绝不同网站的舆论倾向分布没有差异的原假设，认为车企舆论分布倾向与网站来源有关，因此在进行分词时应把网站名称加入到文章中。 Table 1 Variance analysis results of the distribution of public opinion tendencies of various website df sum_sq mean_sq F PR (>F) group 1.0 23.3449 23.34489 67.9009 2.48 × 10 −16 Residual 3207.0 1102.5928 0.3438 表1. 各网站车企舆论倾向分布方差分析结果 3) 分舆论倾向的主要词汇特征描述 图7. 正面舆论倾向词云图 从图7可以看出，在给出的68，060条评论中，轿车和公司是所有评论中出现频次最高的两个词，除此之外，库里南是正面舆论倾向中频次出现最多的词，由于其本身安全性高、抗震性强、品质高等特点，受到人们一致好评。从词云图可以看出，正向舆论倾向中，出现频次较高的词更多是与汽车品牌有关，例如：“库里南”、“马自达”、“起亚”等。 图8. 负面舆论倾向词云图 由图8可知，在给出的评论中，“汽车”、“车型”、“帕萨特”、“成绩”、“碰撞”、“本田”等成为了负面舆论倾向中的关键词云，在相关信息中被提及频次较高。“碰撞”在负面舆情词云图中出现频次很高，说明其对于车企或者消费者而言，是社会关注度和敏感度较高的词，且其舆论导向性很高；对比正向舆论词云图，车型提及频次高很多，由此可以看出，消费者在汽车外形方面，更注重车型，而大多数车辆的车型并不能很好地满足消费者的购车需求。除此之外，看整个词云，可以看出，负面舆论倾向中，更多的评论是与汽车本身性能和性价比有关，“气囊”、“低速”、“低配”、“性价比”、“费用”、“伤害”等出现频繁，很多车对于消费者而言性价比等并不高，不受消费者的青睐。 图9. 中性舆论倾向词云图 由图9可知，在所有评论中，“市场”、“全球”、“车辆”、“女司机”、“广州”等词成为了中性舆论倾向中出现频次较高的词，结合整个中性舆论词云图可以看出，与中性舆论关联性较高的词基本属于宏观方面，大多是从社会整体的角度发表评论，没有任何舆论导向。 (三) 朴素贝叶斯模型的训练与测试 通过对已经预处理好的数据进行分词、去除停用词，我们得到了文本数据的词频矩阵。通过训练集数据的词频矩阵构建朴素贝叶斯分类器，然后将测试集的数据放入分类器中进行预测，从而对分类器的稳健性和预测效果进行评估。测试集车企舆情预测精度如表2所示。 Table 2 Test set accurac Values Precision Recall F1-Score Support −1 0.45 0.68 0.54 8992 0 0.86 0.68 0.76 49850 1 0.37 0.58 0.45 9818 Accuracy 0.67 68660 Macro Avg 0.56 0.65 0.59 68660 Weighted Avg 0.73 0.67 0.69 68660 表2. 测试集精度 从该结果中可以看到，车企负面舆情的识别精度为0.45，召回率为0.68，F1得分为0.54；车企中性舆情的识别精度为0.86，召回率为0.68，F1得分为0.76；车企正面舆情的识别精度最低，仅为0.37，召回率为0.58，F1得分为0.45。从全局来看，车企舆情识别的总体精度为0.67，按照数据量加权计算后的识别精度为0.73，还是比较理想的。 造成识别精度差的原因主要有以下几点：1) 数据分布不均衡，正面和负面舆情的关键词汇获取较少；2) 正面和中性舆情倾向的文章词汇相似度较高，不易区分；3) 文章较长，词汇矩阵过大导致的预测精度降低。 (四) 数据集的重新分类与验证 考虑到正面和中性舆情倾向的文章不容易区分，本文拟重新定义舆情倾向编码，并进行分类预测。 1) 负面舆情导向与其他 本文将车企的正向舆情倾向与中性舆情倾向归为一类，记为“0”，将负面舆情倾向记为“−1”，重新利用训练集数据进行朴素贝叶斯分类器的构造，然后将训练集数据放入分类器中得到的精度报告如表3所示： Table 3 Test set accuracy (0 VS −1 Values Precision Recall F1-Score Support −1 0.42 0.70 0.53 8992 0 0.95 0.86 0.90 59668 Accuracy 0.84 68660 Macro avg 0.69 0.78 0.71 68660 Weighted avg 0.88 0.84 0.85 68660 表3. 测试集精度(0 VS −1) 从该结果中可以看到，车企负面舆情的识别精度为0.42，召回率为0.70，F1得分为0.53；车企非负面舆情的识别精度为0.95，召回率为0.86，F1得分为0.90。从全局来看，车企舆情识别的总体精度为0.84，按照数据量加权计算后的识别精度为0.88，与未重新定义之前，精度有了很大的提升。 2) 正面舆情导向与其他 本文将车企的负向舆情倾向与中性舆情倾向归为一类，记为“0”，将正面舆情倾向记为“1”，重新利用训练集数据进行朴素贝叶斯分类器的构造，然后将训练集数据放入分类器中得到的精度报告如表4所示： Table 4 Test set accuracy (0 VS 1 Values Precision Recall F1-Score Support 0 0.92 0.83 0.87 58842 1 0.36 0.59 0.45 9818 Accuracy 0.79 68660 Macro avg 0.64 0.71 0.66 68660 Weighted avg 0.84 0.79 0.81 68660 表4. 测试集精度(0 VS 1) 从该结果中可以看到，车企正面舆情的识别精度为0.36，召回率为0.59，F1得分为0.45；车企非正面舆情的识别精度为0.92，召回率为0.83，F1得分为0.87。从全局来看，车企舆情识别的总体精度为0.79，按照数据量加权计算后的识别精度为0.84，与未重新定义之前，精度有了很大的提升。但是，与第一种定义方式相比，精度有所下降，也从侧面印证了负面舆情比正面舆情更具有识别性。