统计分析丨用Python制作一份电影排行榜——以熵权法为例
Posted 科研联盟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了统计分析丨用Python制作一份电影排行榜——以熵权法为例相关的知识,希望对你有一定的参考价值。
以下为20部电影的票房(Money)、主观评分(Score)、艺术性评分(Artistry)、商业性评分(Business)的数据集。下面利用熵权法分别计算四个指标的权重,并对每部电影的四个特征进行加权求和获得总评分。
1、数据标准化
为去除电影各指标之间的规模差异影响,可利用以下公式对原指标值进行处理,即将指标值到指标最小值的差占该指标最大距离的比率作为标准化后的指标值:
2、计算各指标的信息熵
在计算各指标的信息熵之前,我们需要先理解什么是信息熵以及为什么能用信息熵来计算指标权重。
熵这个词最初来自于热力学,它是被用来表示分子状态混乱程度物理量。1948年,信息论之父——克劳德香农在解决信息的度量问题中提出了信息熵的概念。信息熵是用信息的不确定性来衡量信息量的,即一件事物的确定性越大,其发生的概率越大,所包含信息量越少。比如,在做一道四选项的单选题时,某人告诉你A选项必不选,那么其他三个选项的概率就增加了,也就是说你选对的概率增加了;如果某人告诉你B、D也不选,那么最终C选项的概率变为100%,这意味着信息量降到最小,要知道若没人告诉我们上述的信息并且我们自身也完全不知道选哪个选项的话,一开始这道选择题包含4种可能性,而现在只有一种可能性,这也叫做熵减。
将标准化后的指标值转化为每个指标值出现的概率
以上为电影指标值概率化后的结果(只显示其中6部)
利用信息熵公式计算指标信息熵并转化为权重
Tips:上式中n表示评价的个体数量,比如这里有20部电影,那么n为20。
Tips:上式中k表示指标的个数,比如这里有每部电影都有4个指标,因此k为4。
计算结果为:
利用上述权重对电影数据集中的各个指标(标准化后的值)进行加权求和并对得到的总评分进行排序,就可以得到一份电影排行榜啦~
电影排行榜
若对以上内容有疑问可扫描文末二维码进群咨询。
出品/TES工作室
推荐阅读:
以上是关于统计分析丨用Python制作一份电影排行榜——以熵权法为例的主要内容,如果未能解决你的问题,请参考以下文章
Python 从底层结构聊 Beautiful Soup 4(内置豆瓣最新电影排行榜爬取案例)!