POWERBI数据处理和分析-数据分析高级应用案例_第1页
POWERBI数据处理和分析-数据分析高级应用案例_第2页
POWERBI数据处理和分析-数据分析高级应用案例_第3页
POWERBI数据处理和分析-数据分析高级应用案例_第4页
POWERBI数据处理和分析-数据分析高级应用案例_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据分析高级应用案例1章节内容10.1动态分析10.2关联分析10.3线性回归分析210.1动态分析静态分析方法数据分析中目标导向的参数是固定的静态分析方法的缺点要达到不同的目标,每次都需要调整参数,手工操作,比较麻烦;不能够在多个感兴趣的分析目标之间快速切换和对比。310.1动态分析动态分析关键思路:首先确定数据分析中目标导向的参数,然后将这些参数所有可能的取值转化为数据表之外的辅助表;通过报表中的切片器让分析人员可以通过可视化的方式为参数选择当前的值;将得到的参数值用于核心度量值DAX公式的构造最终完成计算和显示,达到分析的目标.410.1动态分析动态分析方法参数表What-if参数510.1动态分析——参数表参数表:分析人员手工构造的包括参数化度量值所有可能取值的辅助数据表。参数表的列中被选择的值用于替换原有度量值中的常量,或者作为在多个度量值之间进行选择的依据,通常会作为DAX度量值公式的一部分。将参数表与报表页中的切片器结合使用,用户在进行可视化分析时通过对切片器的选择决定DAX度量值公式中参数表列中属性的取值,从而根据用户的操作来进行动态分析。610.1动态分析——参数表案例:使用参数表快速切换基于多个不同度量值指标的分析。(1)构造了“每平方米均价”和“二手房数量”两个度量值作为分析的量化指标,因此可以使用这两个度量值的名称作为参数表ANALYSISMETRICS中唯一列Metric的数据710.1动态分析——参数表案例:使用参数表快速切换基于多个不同度量值指标的分析。(2)在当前报表页中放置一个切片器对象,使用参数表ANALYSISMETRICS中唯一的列Metric作为切片器对象的“字段”属性值。810.1动态分析——参数表案例:使用参数表快速切换基于多个不同度量值指标的分析。(3)构造一个能够根据参数表筛选器上下文决定的度量值“量化分析指标”,从而可以根据用户对切片器的选择,实现动态的度量值指标分析。量化分析指标=IF(HASONEVALUE(ANALYSISMETRICS[Metric]),SWITCH(VALUES(ANALYSISMETRICS[Metric]),"每平方米均价",[每平方米均价],"二手房数量",[二手房销售数量],BLANK()),[每平方米均价])910.1动态分析——参数表案例:使用参数表快速切换基于多个不同度量值指标的分析。(4)在当前报表页中设置两个簇状条形图,分别用toilets和equipment列作为轴;设置两个簇状柱形图,分别用“房型”和direction列作为轴;再设置一个折线图对象,使用buildingyear作为轴。同时,将以上5个可视化对象的“值”属性都设置为步骤(3)中构造的“量化分析指标”度量值。1010.1动态分析——参数表案例:使用参数表快速切换基于多个不同度量值指标的分析。(5)通过对切片器对象中复选框的选择,可以方便地实现基于“每平方米均价”或“二手房数量”等不同度量值指标的数据分析。1110.1动态分析——What-if参数PowerBI在建模选项卡中提供了一个“新建参数”功能(What-if参数),可以自动产生的一个序列用于生成参数替换对应的所有可能取值,帮助用户创建参数表和参数度量值。1210.1动态分析——What-if参数案例:基于What-if参数的动态排名分析(1)按照小区对二手房均价进行排名。小区信息属于block表,二手房信息属于house表,两张表之间通过block_id字段建立了联系。构造度量值:二手房小区销售均价排名=RANKX(ALL(block[blockname]),[每平米均价])添加一个矩阵可视化对象1310.1动态分析——What-if参数案例:基于What-if参数的动态排名分析(2)矩阵对象本质是数据透视表,值为空的数据行不会显示出来,根据这个原理构造只显示排名前5的小区信息所需的度量值。定制的二手房小区销售均价排名=VARRANKBYBLOCKNAME=RANKX(ALL(block[blockname]),[每平方米均价])VARCUSTOMEDRANK=IF(RANKBYBLOCKNAME<=5,RANKBYBLOCKNAME,BLANK())RETURNCUSTOMEDRANK根据排名显示的二手房均价=VARRANKBYBLOCKNAME=RANKX(ALL(block[blockname]),[每平方米均价])VARCUSTOMEDPRICE=IF(RANKBYBLOCKNAME<=5,[每平方米均价],BLANK())RETURNCUSTOMEDPRICE1410.1动态分析——What-if参数案例:基于What-if参数的动态排名分析(2)基于定制度量值创建分析排名前5小区信息的矩阵对象1510.1动态分析——What-if参数案例:基于What-if参数的动态排名分析(3)如何动态分析排名前n的小区信息?将定制排名度量值公式中的5抽象为n使用What-if参数创建n对应的参数表和切片器修改定制排名度量值公式,使用切片器对参数表的筛选结果结合矩阵可视化对象,达到动态分析的目标1610.1动态分析——What-if参数案例:基于What-if参数的动态排名分析(3)在“建模”选项卡中单击“新建参数”按钮,在“模拟参数”对话框中创建用于制定排名数量的参数表RANKARG。参数表的本质RANKARG=GENERATESERIES(0,10,1)配套的度量值(可以修改默认名称“RANKARG值”)VALUE_RANKARG=SELECTEDVALUE('RANKARG'[RANKARG],5)1710.1动态分析——What-if参数案例:基于What-if参数的动态排名分析(3)修改动态排名所需的度量值定制的二手房小区销售均价排名= VARRANKCOUNT=RANKARG[VALUE_RANKARG] VARRANKBYBLOCKNAME=RANKX(ALL(block[blockname]),[每平米均价]) VARCUSTOMEDRANK=IF( RANKBYBLOCKNAME<=RANKCOUNT, RANKBYBLOCKNAME, BLANK() ) RETURNCUSTOMEDRANK根据排名显示的二手房均价= VARRANKCOUNT=RANKARG[VALUE_RANKARG] VARRANKBYBLOCKNAME=RANKX(ALL(blockinfo[blockname]),house[每平米均价]) VARCUSTOMEDPRICE=IF( RANKBYBLOCKNAME<=RANKCOUNT, house[每平米均价], BLANK() ) RETURNCUSTOMEDPRICE1810.1动态分析——What-if参数案例:基于What-if参数的动态排名分析(3)矩阵可视化对象和切片器配合,到达控制和显示动态排名的效果。1910.2关联分析联分析可以发现数据变量之间的关联规律,可以用于指导实践或决策。关联规则分析:通过将数据库中数据之间频繁出现的关联模式以规则的方式表达,然后使用算法在数据库中进行关联规则挖掘。例如:购物篮分析以商品数据库为例,如果购买商品X的同时很大可能也会购买商品Y,则可以构成一条关联规则X==>Y其中X称为前件,Y称为后件。2010.2关联分析支持度是指同时包含X和Y的样本占样本总数的比例Support(X==>Y)=P(X∪Y)置信度是指同时包含X和Y的样本数占包含X的样本数的比例。Confidence(X==>Y)=P(X|Y)需要根据问题的背景知识,事先设定好支持度和置信度的阈值2110.2.2二手房数据库的关联分析实践每条二手房销售记录都包含多个条目,主要有面积、平米均价、房龄、房型、楼层、装修程度等等。目标:研究和房价关联的主要因素考虑将平米均价设置为预挖掘的关联规则的后件Y,其他因素作为前件X,设置支持度为0.05,置信度为0.4,分析构成不同房价等级的影响因素。2210.2.2二手房数据库的关联分析实践平米均价、房龄、建筑面积等数值型数据不利于关联规则的生成,因此需要将数值型条目对应的列属性数据值进行分类将其离散化,根据分类值再来进行关联分析。2310.2.2二手房数据库的关联分析实践数值列的离散化具体实现:添加新的属性列。priceclass=if(house[unit_price]<20000,"低价房",if(house[unit_price]>30000,"高价房","中价房"))areaclass=switch(true(), house[area]<100,"面积小于100", house[area]<200,"面积[100,200]", house[area]<300,"面积[200,300]", "面积大于300")ageclass=switch(true(), house[buildingyear]<1990,"90年代前", house[buildingyear]<2000,"90年代", house[buildingyear]<2011,"2000年代", "2010年后")2410.2.2二手房数据库的关联分析实践为了使用前件和后件条件构造上下文,需要在不同的计算时刻使用不同的筛选条件,因此将后件房价等级抽取出来单独构造一张房价条件表,作为后件筛选上下文构造使用。PRCIECONDTABLE=distinct( SELECTCOLUMNS( 'house', "priceclass",'house'[priceclass]))2510.2.2二手房数据库的关联分析实践在PRCIECONDTABLE与house表建立联系时,为了不造成度量值计算的影响,将该联系先设置为不活动的,在需要使用其作为筛选条件时再使用DAX函数激活。2610.2.2二手房数据库的关联分析实践支持度和置信度的定义:Support(X==>Y)=同时包含X和Y的二手房销售数量/二手房总销售数量Confidence(X==>Y)=同时包含X和Y的二手房销售数量/包含X的二手房销售数量X作为影响房价的因素,可以是单一的,例如面积分类,也可以是复合的,例如面积分类+年代分类+房型等等,可以通过使用筛选器对house表进行筛选实现。2710.2.2二手房数据库的关联分析实践二手房销售量度量值二手房销售量=DISTINCTCOUNT(house[no])包含X的二手房销售数量首先需要筛选出包含因素X的所有二手房销售数据行,注意在DAX中筛选可以通过上下文环境实现,例如可视化对象、切片器等,这里的筛选上下文是针对house表构造的;然后使用“二手房销售量”度量值在不同的上下文环境中可以计算得到相应的包含X的二手房销售数量。2810.2.2二手房数据库的关联分析实践同时包含X和Y的二手房销售数量通过House表对因素X进行筛选,通过PRICECONDTABLE表对房价类Y进行筛选,共同构造同时包含X和Y的针对House表的筛选上下文环境。VARCURRENTDATA=CALCULATETABLE( house, all('house'), USERELATIONSHIP(house[priceclass],PRICECONDTABLE[priceclass]) )

VARRES=CALCULATE( [二手房销售量], KEEPFILTERS(CURRENTDATA))RETURNRES2910.2.2二手房数据库的关联分析实践二手房总销售数量=CALCULATE([二手房销售量],REMOVEFILTERS('house'))XY支持度=DIVIDE([同时包含X和Y的二手房销售数量],[二手房总销售数量])XY置信度=DIVIDE([同时包含X和Y的二手房销售数量],[二手房销售量])3010.2.2二手房数据库的关联分析实践使用矩阵对象,将感兴趣的house表中的房价影响因素属性放置在矩阵的行属性上,将PRICECONDTABLE的房价类属性放置在矩阵的列属性上,将支持度和置信度度量值放置在矩阵的值属性上,则可以计算得到不同影

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论