《第10章 数据分析高级应用案例教学课件.pptx》由会员分享,可在线阅读,更多相关《第10章 数据分析高级应用案例教学课件.pptx(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第10 章 数据分析高级应用案例教学课件第10 章 数据分析高级应用案例2章节内容 10.1 动态分析 10.2 关联分析 10.3 线性回归分析310.1 动态分析静态分析方法 数据分析中目标导向的参数是固定的静态分析方法的缺点 要达到不同的目标,每次都需要调整参数,手工操作,比较麻烦;不能够在多个感兴趣的分析目标之间快速切换和对比。410.1 动态分析动态分析关键思路:首先确定数据分析中目标导向的参数,然后将这些参数所有可能的取值转化为数据表之外的辅助表;通过报表中的切片器让分析人员可以通过可视化的方式为参数选择当前的值;将得到的参数值用于核心度量值DAX公式的构造 最终完成计算和显示,达
2、到分析的目标.510.1 动态分析 动态分析方法 参数表 What-if参数610.1 动态分析参数表 参数表:分析人员手工构造的包括参数化度量值所有可能取值的辅助数据表。参数表的列中被选择的值用于替换原有度量值中的常量,或者作为在多个度量值之间进行选择的依据,通常会作为DAX 度量值公式的一部分。将参数表与报表页中的切片器结合使用,用户在进行可视化分析时通过对切片器的选择决定DAX 度量值公式中参数表列中属性的取值,从而根据用户的操作来进行动态分析。710.1 动态分析参数表 案例:使用参数表快速切换基于多个不同度量值指标的分析。(1)构造了“每平方米均价”和“二手房数量”两个度量值作为分析
3、的量化指标,因此可以使用这两个度量值的名称作为参数表ANALYSISMETRICS中唯一列Metric 的数据810.1 动态分析参数表 案例:使用参数表快速切换基于多个不同度量值指标的分析。(2)在当前报表页中放置一个切片器对象,使用参数表ANALYSISMETRICS 中唯一的列Metric 作为切片器对象的“字段”属性值。910.1 动态分析参数表 案例:使用参数表快速切换基于多个不同度量值指标的分析。(3)构造一个能够根据参数表筛选器上下文决定的度量值“量化分析指标”,从而可以根据用户对切片器的选择,实现动态的度量值指标分析。量化分析指标=IF(HASONEVALUE(ANALYSIS
4、METRICSMetric),SWITCH(VALUES(ANALYSISMETRICSMetric),每平方米均价,每平方米均价,二手房数量,二手房销售数量,BLANK(),每平方米均价)1010.1 动态分析参数表 案例:使用参数表快速切换基于多个不同度量值指标的分析。(4)在当前报表页中设置两个簇状条形图,分别用toilets 和equipment 列作为轴;设置两个簇状柱形图,分别用“房型”和direction 列作为轴;再设置一个折线图对象,使用buildingyear 作为轴。同时,将以上5 个可视化对象的“值”属性都设置为步骤(3)中构造的“量化分析指标”度量值。1110.1 动
5、态分析参数表 案例:使用参数表快速切换基于多个不同度量值指标的分析。(5)通过对切片器对象中复选框的选择,可以方便地实现基于“每平方米均价”或“二手房数量”等不同度量值指标的数据分析。1210.1 动态分析What-if参数 Power BI 在建模选项卡中提供了一个“新建参数”功能(What-if 参数),可以自动产生的一个序列用于生成参数替换对应的所有可能取值,帮助用户创建参数表和参数度量值。1310.1 动态分析What-if参数 案例:基于What-if参数的动态排名分析(1)按照小区对二手房均价进行排名。小区信息属于block表,二手房信息属于house表,两张表之间通过block_
6、id字段建立了联系。构造度量值:二手房小区销售均价排名=RANKX(ALL(blockblockname),每平米均价)添加一个矩阵可视化对象1410.1 动态分析What-if参数 案例:基于What-if参数的动态排名分析(2)矩阵对象本质是数据透视表,值为空的数据行不会显示出来,根据这个原理构造只显示排名前5的小区信息所需的度量值。定制的二手房小区销售均价排名=VAR RANKBYBLOCKNAME=RANKX(ALL(blockblockname),每平方米均价)VAR CUSTOMEDRANK=IF(RANKBYBLOCKNAME=5,RANKBYBLOCKNAME,BLANK()R
7、ETURN CUSTOMEDRANK根据排名显示的二手房均价=VAR RANKBYBLOCKNAME=RANKX(ALL(blockblockname),每平方米均价)VAR CUSTOMEDPRICE=IF(RANKBYBLOCKNAME=5,每平方米均价,BLANK()RETURN CUSTOMEDPRICE1510.1 动态分析What-if参数 案例:基于What-if参数的动态排名分析(2)基于定制度量值创建分析排名前5小区信息的矩阵对象1610.1 动态分析What-if参数 案例:基于What-if参数的动态排名分析(3)如何动态分析排名前n的小区信息?将定制排名度量值公式中的5
8、抽象为n 使用What-if参数创建n对应的参数表和切片器 修改定制排名度量值公式,使用切片器对参数表的筛选结果 结合矩阵可视化对象,达到动态分析的目标1710.1 动态分析What-if参数 案例:基于What-if参数的动态排名分析(3)在“建模”选项卡中单击“新建参数”按钮,在“模拟参数”对话框中创建用于制定排名数量的参数表RANKARG。参数表的本质RANKARG=GENERATESERIES(0,10,1)配套的度量值(可以修改默认名称“RANKARG值”)VALUE_RANKARG=SELECTEDVALUE(RANKARGRANKARG,5)1810.1 动态分析What-if参
9、数 案例:基于What-if参数的动态排名分析(3)修改动态排名所需的度量值定制的二手房小区销售均价排名=VAR RANKCOUNT=RANKARGVALUE_RANKARGVAR RANKBYBLOCKNAME=RANKX(ALL(blockblockname),每平米均价)VAR CUSTOMEDRANK=IF(RANKBYBLOCKNAME=RANKCOUNT,RANKBYBLOCKNAME,BLANK()RETURN CUSTOMEDRANK根据排名显示的二手房均价=VAR RANKCOUNT=RANKARGVALUE_RANKARGVAR RANKBYBLOCKNAME=RANKX(
10、ALL(blockinfoblockname),house每平米均价)VAR CUSTOMEDPRICE=IF(RANKBYBLOCKNAME=RANKCOUNT,house每平米均价,BLANK()RETURN CUSTOMEDPRICE1910.1 动态分析What-if参数 案例:基于What-if参数的动态排名分析(3)矩阵可视化对象和切片器配合,到达控制和显示动态排名的效果。2010.2关联分析 联分析可以发现数据变量之间的关联规律,可以用于指导实践或决策。关联规则分析:通过将数据库中数据之间频繁出现的关联模式以规则的方式表达,然后使用算法在数据库中进行关联规则挖掘。例如:购物篮分析
11、 以商品数据库为例,如果购买商品X的同时很大可能也会购买商品Y,则可以构成一条关联规则 X=Y 其中X称为前件,Y称为后件。2110.2关联分析 支持度是指同时包含X和Y的样本占样本总数的比例 Support(X=Y)=P(X Y)置信度是指同时包含X和Y的样本数占包含X的样本数的比例。Confidence(X=Y)=P(X|Y)需要根据问题的背景知识,事先设定好支持度和置信度的阈值2210.2.2 二手房数据库的关联分析实践 每条二手房销售记录都包含多个条目,主要有面积、平米均价、房龄、房型、楼层、装修程度等等。目标:研究和房价关联的主要因素 考虑将平米均价设置为预挖掘的关联规则的后件Y,其
12、他因素作为前件X,设置支持度为0.05,置信度为0.4,分析构成不同房价等级的影响因素。2310.2.2 二手房数据库的关联分析实践 平米均价、房龄、建筑面积等数值型数据不利于关联规则的生成,因此需要将数值型条目对应的列属性数据值进行分类将其离散化,根据分类值再来进行关联分析。2410.2.2 二手房数据库的关联分析实践 数值列的离散化具体实现:添加新的属性列。priceclass=if(houseunit_price30000,高价房,中价房)areaclass=switch(true(),housearea100,面积小于100,housearea200,面积100,200,housear
13、ea300,面积200,300,面积大于300)ageclass=switch(true(),housebuildingyear1990,90年代前,housebuildingyear2000,90年代,housebuildingyear2011,2000年代,2010年后)2510.2.2 二手房数据库的关联分析实践 为了使用前件和后件条件构造上下文,需要在不同的计算时刻使用不同的筛选条件,因此将后件房价等级抽取出来单独构造一张房价条件表,作为后件筛选上下文构造使用。PRCIECONDTABLE=distinct(SELECTCOLUMNS(house,priceclass,housepri
14、ceclass)2610.2.2 二手房数据库的关联分析实践 在PRCIECONDTABLE与house表建立联系时,为了不造成度量值计算的影响,将该联系先设置为不活动的,在需要使用其作为筛选条件时再使用DAX函数激活。2710.2.2 二手房数据库的关联分析实践 支持度和置信度的定义:Support(X=Y)=同时包含X和Y的二手房销售数量/二手房总销售数量 Confidence(X=Y)=同时包含X和Y的二手房销售数量/包含X的二手房销售数量 X作为影响房价的因素,可以是单一的,例如面积分类,也可以是复合的,例如面积分类+年代分类+房型等等,可以通过使用筛选器对house表进行筛选实现。2
15、810.2.2 二手房数据库的关联分析实践 二手房销售量度量值 二手房销售量=DISTINCTCOUNT(houseno)包含X的二手房销售数量 首先需要筛选出包含因素X的所有二手房销售数据行,注意在DAX中筛选可以通过上下文环境实现,例如可视化对象、切片器等,这里的筛选上下文是针对house表构造的;然后使用“二手房销售量”度量值在不同的上下文环境中可以计算得到相应的包含X的二手房销售数量。2910.2.2 二手房数据库的关联分析实践 同时包含X和Y的二手房销售数量 通过House表对因素X进行筛选,通过PRICECONDTABLE表对房价类Y进行筛选,共同构造同时包含X和Y的针对House
16、表的筛选上下文环境。VAR CURRENTDATA=CALCULATETABLE(house,all(house),USERELATIONSHIP(housepriceclass,PRICECONDTABLEpriceclass)VAR RES=CALCULATE(二手房销售量,KEEPFILTERS(CURRENTDATA)RETURN RES3010.2.2 二手房数据库的关联分析实践二手房总销售数量=CALCULATE(二手房销售量,REMOVEFILTERS(house)XY支持度=DIVIDE(同时包含X和Y的二手房销售数量,二手房总销售数量)XY置信度=DIVIDE(同时包含X和Y
17、的二手房销售数量,二手房销售量)3110.2.2 二手房数据库的关联分析实践 使用矩阵对象,将感兴趣的house表中的房价影响因素属性放置在矩阵的行属性上,将PRICECONDTABLE的房价类属性放置在矩阵的列属性上,将支持度和置信度度量值放置在矩阵的值属性上,则可以计算得到不同影响因素属性作为前件,房价类作为后件的候选关联规则的支持度和置信度一条有意义的结果关联规则可以是面积小于100 AND 90年代=高房价3210.3 线性回归分析 回归分析的主要目的是研究具有因果关系的变量之间的定量联系 将感兴趣的变量作为目标变量或者说因变量 线性回归研究因变量和对其具有线性影响作用的其他自变量之间
18、具有什么样的方程关系 目标:根据自变量对因变量进行预测或者控制。例如,预测房价。使用Power BI Desktop折线图中的预测和趋势线功能,结合在时间维度上的钻取,进行简单的沿时间维度的线性回归分析,从而可以实现一定的预测分析功能。3310.3 线性回归分析 以二手房数据库为例:创建折线图可视化对象,设置值属性为度量值“每平米均价”,设置轴属性为“housesales_calander”表的date列,使用“数据/钻取”选项卡中的钻取功能,调整时间轴的粒度为日、月、季度、年等不同的级别,可以通过“展开下一个级别”按钮一直调整为按照“年、季度、月份和日”显示“每平米均价”数据的折线图。3410.3 线性回归分析 通过“向上钻取”按钮调整为以月为时间粒度单位的二手房价格分析3510.3 线性回归分析 在折线图的“分析”功能选项卡中,通过“预测”功能,添加一条预测线,设置预测长度为3个点/月,置信区间可以使用默认值95%。通过“趋势线”功能,添加一条趋势线。36