根据游戏《三国志11》武将数据,利用决策树分析,找出三国武将特性分布。其中变量包括统率、武力、智力、政治、魅力、身分。
变量说明:
统率:武将带兵出征时的部队防御力。统帅越高受到普通攻击与兵法攻击越少。
武力:武将带兵出征时的部队攻击力,武力越高发动兵法或者普通攻击时对地方部队的伤害就越高;并且当发动单挑时双方武将武力值相差越少则成功率越高,同时武力也代表单挑时的武将攻击力。
智力:武将发动部队计略时的效果与成功率,当武将智力高时则可以降低中计的几率;同时智力代表军师能力。
政治:武将发展内政时的能力,内政越高则生产兵器、买卖粮草、建造建筑时间等内政系都有优势。并且,当搜索人才和与敌方势力交涉时,政治也有至关重要的作用。
魅力:武将在登用在野或者其他势力武将时的能力,魅力越高则成功几率越高。并且,当武将征兵时,魅力也将影响其效果。

三国志每个人物都有一定的身分,除君主,还有侍中、军师、将军、武官和文官。

将军需要统帅武力相加大于150才能封;
军师要求智力90以上并且和政治相加大于160;
侍中需要政治85,并且和智力相加应不小于150(往往成为事实上的宰相);
为简化验证:我们设置三个身份:将军、军师、其他;

序号

身份

要求

人数

1

将军

将军需要统帅武力相加大于150才能封

112

2

军师

军师要求智力90以上并且和政治相加大于160;

20

3

其他

538

准备数据:

ALTER TABLE FactSanguo11 ADD [身分] NVARCHAR(255) NULL

-- 将军 将军需要统帅武力相加大于150才能封
SELECT *
FROM FactSanguo11
WHERE [统率] + [武力] > 150
ORDER BY [统率] + [武力] DESC UPDATE FactSanguo11
SET [身分] = N'将军'
WHERE [统率] + [武力] > 150 SELECT *
FROM FactSanguo11
WHERE [身分] = N'将军'
ORDER BY [统率] + [武力] DESC -- 军师 军师要求智力90以上并且和政治相加大于160
SELECT *
FROM FactSanguo11
WHERE ( [智力] + [政治] > 160 )
AND ( [智力] >= 90 )
ORDER BY [智力] + [政治] DESC UPDATE FactSanguo11
SET [身分] = N'军师'
WHERE ( [智力] + [政治] > 160 )
AND ( [智力] >= 90 ) SELECT *
FROM FactSanguo11
WHERE [身分] = N'军师'
ORDER BY [智力] + [政治] DESC UPDATE FactSanguo11
SET [身分] = N'其他'
WHERE [身分] IS NULL SELECT [身分] ,
COUNT(*)
FROM FactSanguo11
GROUP BY [身分] SELECT *
FROM FactSanguo11

分析数据:

--统率前10:司马懿、周瑜、曹操、陆逊、关羽、邓艾、孙坚、张辽、孙策、诸葛亮
SELECT TOP 10
*
FROM FactSanguo11
ORDER BY 统率 DESC

--武力前10:吕布、张飞、关羽、马超、赵云、许褚、典韦、文丑、庞德、甘宁
SELECT TOP 10
*
FROM FactSanguo11
ORDER BY 武力 DESC

--智力前10:诸葛亮、郭嘉、贾诩、庞统、周瑜、司马懿、荀彧、陆逊、荀攸、法正
SELECT TOP 10
*
FROM FactSanguo11
ORDER BY 智力 DESC

--政治前10:荀彧、张昭、陈群、张纮、诸葛亮、曹操、司马懿、蒋琬、费祎、夏侯玄
SELECT TOP 10
*
FROM FactSanguo11
ORDER BY 政治 DESC

--魅力前10:刘备、张角、曹操、孙权、貂蝉、甄氏、关羽、荀彧、周瑜、刘虞
SELECT TOP 10
*
FROM FactSanguo11
ORDER BY 魅力 DESC

--统率武力前10:关羽、吕布、赵云、张辽、马超、孙策、孙坚、张飞、邓艾、甘宁
SELECT TOP 10
*
FROM FactSanguo11
WHERE [统率] + [武力] > 150
ORDER BY [统率] + [武力] DESC

--智力政治前10:诸葛亮、荀彧、司马懿、曹操、周瑜、鲁肃、郭嘉、贾诩、荀攸、庞统
SELECT TOP 10
*
FROM FactSanguo11
WHERE ( [智力] + [政治] > 160 )
AND ( [智力] >= 90 )
ORDER BY [智力] + [政治] DESC

分析过程:












《BI那点儿事》Microsoft 决策树算法——找出三国武将特性分布,献给广大的三国爱好者们的更多相关文章

  1. 《BI那点儿事》Microsoft 决策树算法

    Microsoft 决策树算法是由 Microsoft SQL Server Analysis Services 提供的分类和回归算法,用于对离散和连续属性进行预测性建模.对于离散属性,该算法根据数据 ...

  2. 《BI那点儿事—数据的艺术》目录索引

    原创·<BI那点儿事—数据的艺术>教程免费发布 各位园友,大家好,我是Bobby,在学习BI和开发的项目的过程中有一些感悟和想法,整理和编写了一些学习资料,本来只是内部学习使用,但为了方便 ...

  3. 《BI那点儿事》Microsoft 线性回归算法

    Microsoft 线性回归算法是 Microsoft 决策树算法的一种变体,有助于计算依赖变量和独立变量之间的线性关系,然后使用该关系进行预测.该关系采用的表示形式是最能代表数据序列的线的公式.例如 ...

  4. 《BI那点儿事》Microsoft 神经网络算法

    Microsoft神经网络是迄今为止最强大.最复杂的算法.要想知道它有多复杂,请看SQL Server联机丛书对该算法的说明:“这个算法通过建立多层感知神经元网络,建立分类和回归挖掘模型.与Micro ...

  5. 《BI那点儿事》数据挖掘初探

    什么是数据挖掘? 数据挖掘(Data Mining),又称信息发掘(Knowledge Discovery),是用自动或半自动化的方法在数据中找到潜在的,有价值的信息和规则. 数据挖掘技术来源于数据库 ...

  6. 《BI那点儿事》Microsoft 聚类分析算法——三国人物身份划分

    什么是聚类分析? 聚类分析属于探索性的数据分析方法.通常,我们利用聚类分析将看似无序的对象进行分组.归类,以达到更好地理解研究对象的目的.聚类结果要求组内对象相似性较高,组间对象相似性较低.在三国数据 ...

  7. scikit-learn决策树算法类库使用小结

    之前对决策树的算法原理做了总结,包括决策树算法原理(上)和决策树算法原理(下).今天就从实践的角度来介绍决策树算法,主要是讲解使用scikit-learn来跑决策树算法,结果的可视化以及一些参数调参的 ...

  8. ID3决策树算法原理及C++实现(其中代码转自别人的博客)

    分类是数据挖掘中十分重要的组成部分.分类作为一种无监督学习方式被广泛的使用. 之前关于"数据挖掘中十大经典算法"中,基于ID3核心思想的分类算法C4.5榜上有名.所以不难看出ID3 ...

  9. ID3和C4.5分类决策树算法 - 数据挖掘算法(7)

    (2017-05-18 银河统计) 决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来判断其可行性的决策分析方法,是直观运用概率分析的一种图解法.由于这种决策分支画 ...

随机推荐

  1. video标签的属性和方法总结

    最近想做一个弹幕插件,查了很多video标签的属性和方法 error属性 在正常读取时候,使用媒体数据的过程中,video元素或audio元素的error属性为null,但是任何时候只要出现错误,er ...

  2. ASP.Net的导出Excel的快速方法,DataTable导出Excel(亲测,非原创)

    //使用方法 ExcelHelper.dataTableToCsv(dt,@"D:\1212.xls");System.Diagnostics.Process.Start(@&qu ...

  3. java 类反射记录

    Class的getDeclaredMethod方法是获取当前类下的所有方法,包括private修饰的,该方法不获取父类的方法. getMethod获取父类及本类下的所有public方法.

  4. 视频聊天室可以用php制作吗?

    首先,告诉你单纯用php制作视频聊天室是实现不了的,需要配合其他技术手段一起操作,例如和FLASH配合,使用FLASH获取语音(FLASH可以获取访问端的设备,例如摄像头). PHP运行在服务器端,是 ...

  5. shell 知识

    解压 tar.bz2文件 bunzip2 linux-2.6.13.tar.bz2 | tar xvf -

  6. Visual Studio Xamarin编译Android项目出错的解决办法

    安装完Xamarin后,编译Android项目时,你会发现好长时间进度都不动,当你取消编译后,会发现其实是出错了,就是因在Android项目在第一次编译时要去google网站上下一个andorid s ...

  7. 桌面 透明 三角形 分层窗口 DX

    //桌面 透明 三角形 分层窗口 DX //IDirect3DSurface9 GetDC UpdateLayeredWindow #include <Windows.h> #includ ...

  8. crtmpserver系列(一):流媒体概述

    概述 所谓流媒体按照字面意思理解就是像流一样的媒体,看起来像是废话.流媒体现在司空见惯,所以一般人大概不会有疑问.事实上在流媒体还没有出现的时候,基本上通过网络播放电影就不太现实.通过网络播放电影的时 ...

  9. [后端人员耍前端系列]KnockoutJs篇:使用KnockoutJs+Bootstrap实现分页

    一.引言 由于最近公司的系统需要改版,改版的新系统我打算使用KnockoutJs来制作Web前端.在做的过程中,遇到一个问题——如何使用KnockoutJs来完成分页的功能.在前一篇文章中并没有介绍使 ...

  10. Unable to locate secure storage module异常的解决方案

    org.eclipse.equinox.security.storage.StorageException: Unable to locate secure storage module 该异常同样是 ...