数据-R语言-图表-决策-Linux-Python

r语言-关联规则-文本分析-三国人物分析

2018-11-22  本文已影响1人  DataMining234

 r语言关联规则包已经非常好了,还带有可视化图形等等,但是唯一不好的是数据格式问题,第一个输入的数据格式需要转换,第二输出的数据格式也很嘈杂,不能直接导出到本地。出于以上原因,本人决定自己用r语言写一个关联规则算法,一则熟悉算法流程,加深以后的运用,二则实现格式的转变。我的输入格式是列表,一列为一个购物篮,输出为数据框格式。下面以三国为例进行分析!!!

关联规则挖掘(三国人物关系)

第一步:下载《三国》电子书,以及搜狗词库(历史人名):如下图

第二步 : 数据处理

凡是在一段中共现的人名,我们就把这些家伙装进一个购物篮。

例如:

第500段正文如下

[1] "于是二人领本部兵马,往曹操寨中投降。夏侯惇曰:“张、高二人来降,未知虚实。”操曰:“吾以恩遇之,虽有异心,亦可变矣。”遂开营门命二人入。二人倒戈卸甲,拜伏于地。操曰:“若使袁绍肯从二将军之言,不至有败。今二将军肯来相投,如微子去殷,韩信归汉也。”遂封张邰为偏将军、都亭侯,高览为偏将军、东莱侯。二人大喜。"

则:第500个购物篮如下:

[1] "曹操" "夏侯惇" "袁绍" "韩信"

第三步: 频繁集发现

设置,支持度为0.01,出现下列频繁集:

一项频繁集

一项频繁集也就是出现频数最高的人物了,排名前五的都是一方霸主。

频繁项支持度关系数

曹操0.2532471

刘备0.0897281

孙权0.0867771

司马懿0.0649351

袁绍0.0608031

二项频繁集

人生最重要的伙伴是你的敌人,曹操最大的敌人是刘备,然后是孙权,袁绍次之。袁术只能是曹操的一个小敌人而已,从三国里面袁术称帝,孟德却大笑骂他为莽夫。次重要的当然是自己的亲朋好友了,夏侯惇,于禁,夏侯渊可以说是曹操的三元猛将啊。

频繁项支持度关系数

曹操<-->刘备0.0519482

曹操<-->孙权0.0407322

曹操<-->袁绍0.03662

曹操<-->夏侯惇0.0283352

刘备<-->孙权0.0265642

曹操<-->夏侯渊0.0224322

曹操<-->于禁0.0159392

曹操<-->袁术0.0147582

三项频繁集

两个铁三角;其实就是三国里面的两场决定历史的大战。第一场大战时官渡之战,确定了曹操雄踞北方的地位,这场战争纠结在曹操<-->刘备<-->袁绍他们之间,然后就是赤壁之战了,确定了三国鼎立的局面,这个铁三角就是曹操<-->刘备<-->孙权

频繁项支持度关系数

曹操<-->刘备<-->孙权0.0171193

曹操<-->刘备<-->袁绍0.0100353

第四步: 规则发现,设置置信度为0.4

二项规则挖掘

规则解释:于禁-->>>曹操 这条规则的置信度为0.771429,意义是出现于禁的地方有77%的时候是和曹操一起出现的。他在三国里面就是为存托曹操的。这里我不想多说,什么了,只能说曹操的光环太厉害了。(在购物篮里面,如果你买了于禁,再给你推荐曹操,你有77%的概率也会买曹操的。)

我比较感兴趣的规则:

王平-->>>魏延 :王平与魏延分别代表中规中矩与特立独行,“以德治国”的诸葛亮,对二人的使用态度大相径庭。刘备死后,诸葛亮碍于青黄不接的人才形势,不得不用魏延,但时常把魏延纳入“普通战将”一员,甚至与陈式之流的三流牙将并列,对其始终不放手使用,而对于战绩平平的王平,则宠爱有加,助长其爬到魏延头上。

袁术-->>>袁绍 出现袁术的地方也会出现袁绍的,从一开始的联盟灭董卓,袁绍为盟主,袁术没副盟主。到后来袁兄弟为玉玺反目等等。

guizeconfsuplength

于禁-->>>曹操0.0159390.7714292

夏侯惇-->>>曹操0.0283350.752

夏侯渊-->>>曹操0.0224320.7450982

乐进-->>>曹操0.0106260.6923082

袁绍-->>>曹操0.03660.6019422

刘备-->>>曹操0.0519480.5789472

袁术-->>>曹操0.0147580.5555562

孙权-->>>曹操0.0407320.4693882

王平-->>>魏延0.0112160.4042552

袁术-->>>袁绍0.0106260.42

三项规则

guizeconfsuplength

刘备<-->袁绍-->>>曹操0.0100350.8095243

刘备<-->孙权-->>>曹操0.0171190.6444443

曹操<-->孙权-->>>刘备0.0171190.420293

上一篇下一篇

猜你喜欢

热点阅读