1、第8章 数据分析基础章节内容 8.1数据分析基本思想 8.1.1 Power Pivot中的数据表示模型关系模型 8.1.2 Power Pivot中数据分析建模基本思想 8.1.3数据分析核心概念1一一数据筛选 8.1.4数据分析核心概念2数据计算 8.2 DAX语言基础函数 821控制流/逻辑函数 822数据筛选基础函数 8.2.3数据统计/计算函数 8.3数据分析基础案例28.1.1 Power Pivot中的数据表示模型一一关系模型式 形 表 隹 二H A O 整据 数列 将干 是若 化和 构行 结干 的若 据了后成行。独 象构带张 抽型 数性干 象类个属若 对据每个成。类数,一 一的
2、 集 某列对象数二 中每 SW 界和 一界,来 世名的世象起 实列中实抽系 现的界现型 对列世的象列 示有实示对性 表所 1,表一森不同 型维普 类二据该据过 的而数是根通 同允,以 相性一值中可 在属。每段库又 具个构的字据但 据一结中列数,数的的0 列到表维的关存数含每得了二中在V38.1.1 Power Pivot中的数据表示模型一一关系模型 1.关系的基本概念 在Power Bl Desktop中,关系是指数据表之间的逻辑联系,这些逻 辑联系抽象自数据表所代表的现实世界中的客观对象。从形式上说,关系是通过两个表中具有相同意义的列构建的,通 常是分属两张表的两个列具有相同的名字和数据类型
3、。从作用上说,通过关系可以将两张表中的数据行关联起来,从而 将分属于两张表中的数据行合并为包含两个对象各自属性的一个 数据行。48.1.1 Power Pivot中的数据表示模型-关系模型从设置的内容上说,关系包括“基数”和“筛选方向”。基数是指已建立关系的两张表中每个数据行所代表的对象之间 的对应数量关系。筛选方向表示在两张表之间建立关系以后,以某张表为基础对 数据进行筛选时,对另一张表中数据的筛选效果。主要有以下 两种类型的筛选方向。58.1.1 Power Pivot中的数据表示模型一一关系模型基数类型(为表述方便,将两张表分别称为左表和右表以示区别)关系的基数类型含义示例一对一(1:1
4、)左表中的一个数据行,在右表中有唯一的 一个数据行与之具有相同的关系列字段值,反之也是一样。这表示两张表中数据行所代 表的对象有一一对应的关系。“房屋”表和“电量设备”表之间是一对一的关系。因为一 套房屋里只有一个电量设备,而 一个电量设备只能用于一套房屋。一对多(l:n)左表中的一个数据行,在右表中有多个数 据行与之具有相同的关系列字段值,而右表 中的一个数据行,在左表中只有唯一的一个 数据行与之具有相同的关系列字段值。“二手房”表和“小区”表 之间是一对多的关系。因为一套 二手房只能属于一个小区,而一 个小区可以包括多套二手房。多对多(n:m)左表中的一个数据行,在右表中有多个数 据行与之
5、具有相同的关系列字段值;而右表 中的一个数据行,在左表中也有多个数据行 与之具有相同的关系列字段值。“小区”表和“地铁站”表 之间是多对多的关系。因为一个 小区附近可以有多个地铁站,而 一个地铁站附近也可以有多个小 区。68.1.1 Power Pivot中的数据表示模型一一关系模型筛选方向类型关系的筛选方向含义示例单向假设筛选方向是从左表到右表 单向:在对左表的数据进行筛选时,会根据筛选留下的数据作为条件,依照关系,对右表的数据进行筛选;而反过来,当对右表的数据进行筛 选时,不会根据筛选结果对左表的 数据进行任何筛选。假设是从地铁站表到二手房表的单向关 系。则当对地铁站表进行筛选时,会根据筛
6、 选得到的地铁站信息,对二手房表进行筛选,则得到符合条件的地铁站附近的二手房。反 之,当对二手房表进行筛选,例如仅选择一 套二手房时,对地铁站表仍然使用所有数据 行,而不会仅留下该二手房附件的地铁站。双向无论对哪一张表的数据进行筛 选时,会根据筛选留下的数据作为 条件,依照关系,对另一张表的数 据进行筛选。假设是从地铁站表到二手房表的双向关 系。则对地铁站表进行筛选时,也会根据关 系对二手房表进行筛选,最后得到的是满足 条件的地铁站及附近的二手房信息。而对二 手房信息进行筛选时,也会根据关系对地铁 站表进行筛选,最后得到的是满足条件的二 手房及这些二手房附近的地铁站信息。78.1.1 Powe
7、r Pivot中的数据表示模型关系模型 2.自动生成关系单击Power Bl Desktop数据视图下“主页”选项卡中“管理关系”按钮,在弹出的“管理关系”对话框中单击“自动检测关系”按 钮Power Pivot则会根据四张数据表的列字段自动检测并生成这些 数据表之间的关系文件 主页 帮助 外部工具 I-1就信序由 B f s k a R,二 获取数据Excel Power Bl SQL输入数据Datave说最近使用的源 转换数据刷新 IS关系fl角色通过以下身份查看:工作簿髓集Server*剪喊 数据 赣 关系 安交88.1.1 Power Pivot中的数据表示模型一一关系模型管理关存可用
8、从:表(列)到:表(列)distance_met rob lock(block_id)block(block_id),distance_met rob lock(metrostation_id)house(block_id)house(metrostation_id)metrostation_gb(metrostation_id)block(block_id)metrostation_gb(metrostation_id)新建-I I 自动检测I I 编辐I 删除关闭98.1.1 Power Pivot中的数据表示模型一一关系模型looll留同 block合:distance metroblo
9、ck 6 block_idZ distance_to_metrometrostationjd折理人折有*blockjdblockname1metrostation_gbmetro_stationmetrostationjd小:*house G:Z area block_idZ buildingheightZ buildingyear direction equipmentZ hallsZ househeight metrostation_id折妻人*折星入108.1.1 Power Pivot中的数据表示模型一一关系模型 3.手工管理关系 如果Power Pivot自动检测生成的数据表之间的关
10、系不能满足数据 表之间的真正逻辑联系,则可以通过手工的方式进一步对数据表 之间的关系进行管理,包括关系的删除、添加和编辑等。通过点击“管理关系”对话框中相应按钮实现,也可以直接对关 系视图中两张数据表之间的关系连接线施加相应的操作。block 6:1 blockjd 1 删除blockname F属性I I -折蜃 2_ area block_id Z buildingheight Z buildingyeardirectionequipment118.1.1 Power Pivot中的数据表示模型一一关系模型对关系的管理和编辑还可以通过单击“管理关系”对话 框中“编辑”按钮,或在具体某个关系
11、的右键菜单中选 择“属性”菜单项调出“编辑关系”对话框实现。在“编辑关系”对话框中可以设置构建关系的数据表及 其列字段、关系的基数类型以及关系的交叉筛选器方向,此外还可以设置此关系是否可用(不可用的关系无法关 联两张数据表)。128.1.1 Power Pivot中的数据表示模型-关系模型X编辑关系选择相互关联的表和列。houseills toiletsareadirectionhouseheight buildingheightequipmentbuildingyearblock_idm12174.5南北37精装2008BK0042189.8南北77中装2009BK007Ml2179南北67
12、精装2013BK023Mlblockblocked blocknameBK001 当代洋新城BKOO2 新世金润家园BKOO3 月亮轩基数多对一(F)使此关系可用假设引用完整性交叉筛选器方向单一在两个方向上应用安全筛选器确定 I 取消138.1.2 Power Pivot中数据分析建模基本思想以一个简单的问题为切入点演示Power Pivot中数据分析的思路、过程和蕴含 的基本思想。1.问题 假设想了解一下二手房房龄对房价的影响,主观直觉上认为房龄越短的房子 应该售价越高,那么数据分析的结果是否可以验证我们的直觉是正确的?我们可以以某个年份(例如2010年)为分界线来区分房龄的新旧。然后分别
13、计算二手房每平米均价、2010年及之后的每平米均价以及2010年之前的每平 米均价并进行对比。二手房每平米均价度量值:每平米均价=AVERAGE(houseunit_price)148.1.2 Power Pivot中数据分析建模基本思想 2.CALCULATE 函数 CALCULATE函数是在筛选器函数对数据做过筛选的基础上,对数据进行 指定的聚合计算。CALCULATE函数的原型是:CALCULATE(,.)第一个参数expression是对数据进行的聚合计算表达式,不可省略。该DAX表 达式中包含着所引用的表对象/列属性,根据情况可以是隐式限定名或显式限定 名,当然这里的DAX表达式也可
14、以是一个已经定义好的度量值。除了第一个参数外的其他参数是对计算所依赖的数据进行筛选的筛选器函数,根据需要筛选器函数可以没有也可以有多个,每一个筛选器函数是在前面的筛 选器函数对数据做过筛选以后的数据集上进一步进行筛选。158.1.2 Power Pivot中数据分析建模基本思想 3.具体实现(1)创建度量值 首先可以使用CALCULATE函数建立两个用于分析新旧二手房价格 的度量值。房龄比较新的二手房的均价计算度量值如下定义:2010年及之后每平米均价=CALCULATE(AVERAGE(houseunit_price),housebuildingyear=20 10)2010年及之后每平米均
15、价二CALCULATE(每平米均KT,housebuildingyear=2010168.1.2 Power Pivot中数据分析建模基本思想房龄比较旧的二手房的均价计算度量值可以如下定义:2010年之前每平米均价=CALCULATE(AVERAGE(houseunit_price),housebuildingyear20 10)或者 2010年之前每平米均价二CALCULATE(每平米均 f,housebuildingyear20 10)178.1.2 Power Pivot中数据分析建模基本思想使用已有的度量值来定义新的度量值是一种比较好的做法,原因 在于:这样使得DAX公式的可读性更好,
16、比较容易理解;如果有多处DAX公式引用同一个已经定义好的度量值,则之前度量值如 果需要修改,只需要修改该度量值定义。如果不这样做,则一旦该度量 值对应的子公式需要修改,则在引用它的每一处地方都需要做到无遗漏 的修改。188.1.2 Power Pivot中数据分析建模基本思想(2)度量值结合可视化对象进行数据分析在报表中添加一个簇状柱形图,设置“每平米均价”、“2010年 及之后每平米均价”、“2010年之前每平米均价”三个度量值为 该簇状柱形图的“值”属性。竭图锢E曲|I 8 I 0及卜A管理关系 新建度量值快度量值新建列新建表 二改卷.一K 管理角色通过以下身份查看:问答设置 语言语言架构
17、关系 计算 页面刷新 在以下情况下会怎么样 安全ft 问答 人V RH帽渝 由 黑可视化 lapyffi 0 Q R 0 295f?2字段|Q搜索U国2000年后每平,0 2010年之前每-0 2010年及之后 Z area blockjd C Z buildingheight O Z buildingyear沏加之S53*坨/.20100523络率一%皿名百切困口 一 MUHQO唱2m o 在此处添加数据字段 directionZJ equipment Z halls Z househeight metrostationjd Z no Z rooms198.1.2 Power Pivot中数
18、据分析建模基本思想通过对不同装修程度的二手房再分别对比新旧房龄二手房的价格 影响,进一步探索分析。在报表中再添加一个簇状柱形图,除了 仿照第一个簇状柱形图设置“值”属性外,再将装修程度设置到“轴”属性上。13 19 house-Power II Desktop 寰录一 X文件 主页 插入 建模 视图 帮助 外部工具 格式 数据/钻取国辑1 E H 型/Q管理关系 新建度量B快度量值新建列新建表 更改检消 孙建叁数 管理角色通过以下身份查看关系 计比 田面电新 在以下1W次下会怎么样 安全性触 _ y S3.:第2页供2页)配星用国巨 ElpyISR Q 摩跑因S I g E 可臣一IHQ园唱
19、V 爵 字段|不搜索U U 2000年后母平 日 2010年之前每,Q 2010年及2后 Z area block.id Z building heightO Z buildingyvar direction3 equiPment 八)Ngment=20 10)首先,该度量值的DAX公式定义给出了所使用的数据表及其字段,即“house表中unit_price字段,而筛选器函及“housebuildingyea门=2010给出了原始数据的第一次筛选。298.1.3数据分析核心概念1数据筛选首先将该度量值应用到卡片图在默认情况下,卡片图只需要设置“值”字段属性,在没有其他筛选器的作用下,该度量值与
20、卡片 图结合给出了数据表中所有2010年及之后建造的二手房的每平米 均价数据,这里平均值计算函数AVERAGE。所基于的筛选器上下 文就是由度量值自身DAX公式定义中的筛选器函数决定的。a搜索34.79 千2010年及之后每平米均价此视觉对象上的筛选器2010年及之后每平米 是(全部)toilets等于2筛选类型。昌皿复处因日 唠目区 易匿困唱口目,官T/Iflfl解困囱巨曲叩曲基本筛选字段回金 10 2 3 436758841512010年及之后每平米均X钻取跨报表318.1.3数据分析核心概念1数据筛选将该度量值应用到柱形图视觉对象。将装修程度设置为柱形图的横轴字段后在柱形图上便 显示出2
21、010年及之后建造的二手房根据不同装修程度分类的房屋每平米均价数据,依横轴 展开的每个柱形所代表的数值实际上都是根据分类轴字段equipment的值又对数据行进行 了一次筛选。例如“豪装”所对应的柱形数值41千是将满足筛选条件equipment一豪装”的数据行留下,再根据DAX公式定义中的筛选条件housebuildingyea=2010对数据做进一步筛选,最后对 这些筛选得到的数据行中的unijprice字段求平均值得到的。在本次应用中,除了DAX公式 外,还依据横轴字段对数据进行了筛选。V K序血随困回巨Ml曲回pyR 政 疯陋屈Rd e M6区园台 号 时lafl凶目Bfflr 可匡史屈
22、唱2-equipment图例在此处添加数据字段X/X轴值2010年及之后每平米均X328.1.3数据分析核心概念1数据筛选将该度量值应用到矩阵对象。将该度量值设置为矩阵的“值”字段,将“装修程度”字段 设置为矩阵的列字段,将计算列“房型”字段设置为矩阵的行字段后,可以得到对于每种 房型按照不同装修程度的每平米均价数据,并且在行和列方向上还有汇总计算结果。该矩阵对象中的每个数值都是由矩阵的行和列筛选器函数、DAX公式的筛选器函数共同构造 的筛选器上下文对house数据表中的数据做过筛选后的数据计算得到的。1房1厅1卫1 1房1厅2卫1房2厅1卫|2房1厅1卫|2房1厅2卫|2房2厅1卫2房2厅2
23、卫|3房1厅1卫|3房1厅2卫|3房2厅1卫3房2厅2卫I简装 精装 毛坯 中装 总计28,918.6039,140.0 046,0 66.673 0 5 53 Q 3.548,90 0.0 0 24,462.9632,80 0.0 031,10 0.0 0 25,600.0 026,544.0 024,242.1125,950.0 029,371.8630,385.2331,516.6729,352.3828,466.6728,988.8928,0 46.1531,735.4231,100.0028,632.1550,257.1430,498.4629,230.7730,189.6634,7
24、46.12血窿国回亘屋曲。回pyR 武 史后区公圜旨亍 曲心百苧fflD 3 一三 基也回Q国T为 崩序雕4房1厅1卫 4房1厅2卫1 4房2厅1卫4房2厅2卫I 4房2厅3卫4房3厅2卫|5房1厅1卫|5房2厅2卫5房2厅4卫 总计39,90 0.0 0.00,0033,56,0037,60 0.0 041,433.33 27,502.0138,200.0 0 37,333.3327,133.33 29,20 0.0 0 31,640.0028,352.94 27,871,43 25,40 0.0 0 28,164.5239,354.90 31,577.0 5 48,150.0 0 35,1
25、10.9438,550.0 0 44,90 0.0 0 45.181.8216,90 0.0 0 16,900.0037,600.0027,70 0.0 0 24,40 0.0 0 26,600.0027,40 0.0 0 27.400.0033,119.84 28,962.97 30,720.00 31,117.79房型equipmentV总行列值2010年及之后每平米均彳X338.1.4数据分析核心概念2数据计算在数据筛选的基础上对量化指标的DAX公式计算通常是按照先产生/提 取每行指定的字段值,然后按照数据表遍历每一数据行聚合计算所需 要的指标值,对数据的计算隐含了对数据表的自动循环遍历
26、过程。数据建模分析的依据是事先根据分析目标和方法定义好的量化指标值,这些量化指标值通常是指度量值。度量值的计算依据可以基于原有列字段值、基于计算列和基于无名 DAX表达式属性值。348.1.4数据分析核心概念2数据计算 1.基于数据表中原有列字段值的计算 这种情况时度量值的计算是遍历数据表中的每一个数据行,从中 提取原有的列字段值完成聚合运算。典型的例子是“每平米均价”度量值的计算。每平米均价=AVERAGE(houseunit_price)X/1 每平米均价=AVERAGE(h ouseunit _price)h alls 区2 2t oilet s 二 area 三direct ion 区
27、 h ouseh eigP buildingh e equipment 二 buildingye三|block_id 曰 met rost at ii sale_dat e 三179南北7滕2013 BK023M0042019隼2月9日180.9南北67娥2010BK061M0042018笔。月5日189.6南北77中装2009BK007M0042019 月 11 日179.1南北27精装2010BK023M0042020朱月10日188.4南北77简装2007BK230M0042020卑月 13日197.3南北47简装2006BK230M00420199115191.3南北37精装2006B
28、K060M0042019年9月 19日188.8南北47精装2009BK230M0042020甲月28日1 87.6南北 7 7中装2008 BK230 M004202042157简装78.2南北2011 BK023 M0042020申月14日unit _price 20300195001690022900178001910022100196002010023000总房价阊厅1卫聚算值15142401811390157352018584302017730174048017607601798600I圈 2房厅1卫2房厅1卫2房厅1卫2房厅1卫2 房 Ihte2房厅1卫2房厅1卫2房厅1卫2房厅1
29、卫358.1.4数据分析核心概念2数据计算 2.基于计算列的计算度量值的计算是遍历数据表中的每一个数据行,根据命名计算列的定义,从 原有列字段值计算得到计算列字段的值,最终完成对所有数据行计算列字段 值的聚合运算。例如,计算所有二手房中最高总房价的度量值定义如下最高总房价=MAX(house总房价)buildinghe,1equipment Jbuildingye|blockjd metrostati 尸sale.date unit-price1 房型 E总房价3聚7精装2008BK004M0042020至月5日210002房2厅1卫15645007中装2009BK007M0042020浜月1
30、日194002房2厅1卫1742120合7精装2013BKO23M0042019年 12月9日203002房2厅1卫16037007精装2010BK061M0042018年 10月5日195002房2厅1卫1577550r计7中装2009BK007M0042019年8月口日169002房2厅1卫1514240。算7精装2010BKO23M00420203108229002房2厅1卫13113907简装2007BK230M00420204135178002房2厅1卫1573520最7简装2006BK230M00420199115191002房2厅1卫18584307精装2006BK060M004
31、20199195221002房2厅1卫2017730大7精装2009BK23OM00420204285196002房2厅1卫17404807中装2008BK23OM00420204215201002房2厅1卫1760760/古7简装2011BKO23M00420204148230002房1厅1卫1798600368.1.4数据分析核心概念2数据计算 3.基于无名DAX表达式属性值的计算 这种情况时度量值的计算是遍历数据表中的每一个数据行,根据 指定的DAX表达式计算每一行的一个没有命名的属性的值,然后 完成对所有数据行中新计算得到的无名属性值的聚合运算。例如,计算所有二手房中平均房龄的度量值定
32、义如下。平均销售房龄=AVERAGEX(HOUSE,YEAR(housesale_date)-housebuildingyear)378.1.4数据分析核心概念2数据计算 AVERAGEX函数的原型是:AVERAGEX(table,expression)第一个参数table是求值所基于的数据表 第二个参数(expression是对于table表中的每一个数据行根据已 有列属性值计算得到一个新的无名属性值的DAX表达式。函数功能是将expression应用到table的每一行数据计算得到新 属性值,然后对这个新属性值的所有数据行计算算术平均值。388.1.3数据分析核心概念1数据筛选基于无名DA
33、X表达式属性值的计算1 平均销售房龄=AVERAGEX(HOUSE,YEAR(housesale_date)-housebuildingyear)0 7equipment 精装buildingye block_idmetrostati Lrsale_dateunit_price房型总房价销售时房!!2008BK004M0042020条月5日210002房2厅1卫1564500127中装2009BK007M0042020钠月 1日194002房2厅1卫1742120117精装2013BK023M0042019年 12月9日203002房2厅1卫160370067精装2010BK061M00420
34、18年 10月5日195002房2厅1卫157755087中装2009BK007M00420198115169002房2厅1卫1514240107精装2010BK023M0042020年3月 10日229002房2厅1卫1811390107简装2007BK230M0042020413 B178002房2厅1卫1573520137简装2006BK230M0042019911 B191002房2厅1卫1858430137精装2006BK060M0042019年9月 19日221002房2厅1卫2017730137精装2009BK230M00420204285196002房2厅1卫174048011
35、398.2.1控制流/逻辑函数在对数据的计算过程中,基本的执行结构包括顺序、分支和循环。循环计算结构在PowerBI中是通过计算函数对数据表的每一行迭代 进行隐式的实现的。在PowerBI中,提供了逻辑函数NOT、AND和OR来实现逻辑非、逻 辑与和逻辑或运算,可以用于逻辑条件的构造。同时提供了IF函数和SWITCH函数,可以实现分支控制结构。408.2.1控制流/逻辑函数 1.IF函数 IF函数根据一个逻辑条件进行分支计算,其函数原型是:IF(,)是一个逻金衰达式,通常构造瓦前以包含数据表中计算条件所对应的数据 歹!J。当为真时,IF函数返回的值作为函数值;当为假时,如果提供了,则IF函数返
36、回的值作 为函数值,否则返回空白值。例如,根据房价数值给房价划分一个级别,例如30000以上作为高价房,小 于等于30000作为非高价房,则可以使用IF函数构造计算列如下:priceclass=if(houseunit_price=30000J 非高价房高价房”)418.2.1控制流/逻辑函数 2.SWITCH 函数 SWITCH函数可以通过一个表达式与预设的多个常量值的匹配比较来实现多分支计 算,其函数原型是:,SWITCH(expression,valuel,resultl,value2,result2.,else)第一个参数expression是标量表达式 后面的value,result
37、成对出现,并且至少出现一对,value可以是常量,也可以是一个 标量表达式。SWITCH函数计算参数expression的值,并依次与每个value的值比较,当expression的 值与某个value相等时,与value一对的(result值将作为最终的函数值;如果(expression与给出的每一个value都不匹配,则最后还可以提供一个可选的else表 达式来祚为最终的函数值,如果expression与给出的每一个value都不匹配又没有提供 else表达式,则最终的函数值为空白值。428.2.1控制流/逻辑函数在编写SWITCH函数表达分支计算时,(expression和value值可
38、以有两种构 造方法。(1)expression根据数据表中数据行中的数据计算expression返回一个 标量值,后续的每个value都是常量,表达了expression的可能取值情况,而else表达式对应的是除了给出的value值之外的取值可能。,Areaclassl=switch(INT(housearea/100),面积小于100”,面积100,200口 2J 面积200,300”,”面积大于300)438.2.1控制流/逻辑函数(2)expression设置为表达式“true(),即始终返回TRUE,后续的每个 value则可以构造为对数据表中数据行中数据判断所属范围的逻辑表达式。这种
39、构造的含义是看哪个value逻辑表达式所表达的逻辑条件为真,则函 数值是与之酉己对的result表达式,而else表达式对应的是所有value都为 假时的取值。Areaclass2=switch(true(),houselareaklOOJ 面积小于 100”,housearea200;W100,200,housearea300;WR200/300,”面积大于300”)44822数据筛选基础函数 ALL函数 ALL函数的功能是清除施加在作为参数的表或表的列上的所有筛 选器函数,从而可以返回所有数据行所对应的数据,其原型是:ALL(|,.)第一个参数是要去除筛选器的数据表,后续的column参数
40、是可 选的,表示是针对table表的哪些列去除筛选器,而未指定的列的筛选 器函数仍然保留。ALL函数的作用是为度量值的计算提供去除筛选器干扰以后的全部数据行,因此通常不会单独使用,而是作为度量值计算函数的数据源参数使用。458.2.2数据筛选基础函数 例。计算二手房单位均价的度量值:每平米均价=AVERAGE(houseunit_price)该度量值应用到可视化对象时,会受到各级筛选器函数作用的影 响。再次构造计算二手房单位均价的度量值:每平米均价 2=CALCULATE(AVERAGE(houseunit_price),ALL(house)在这个度量值的计算中,AU(house)参数的含义是
41、删除作用在 house表上的所有筛选器函数,返回house表的所有数据行,作为 AVERAGE(houseunit_price)计算的上下文数据。468.2.2数据筛选基础函数 不使用ALL函数和使用ALL函数进行度量值计算的区别母平米均价(按equipment)母平米均价2(按equipment)30千40千千 20千 千 2010 NU豆米时W精装 简装 毛坯 简装equipment。千 一豪装 简装 精装 毛坯 中装 简装equipment千 O装 豪装中47822数据筛选基础函数 2.ALLEXCEPT 函数 ALLEXCEPT函数的作用是有选择的清除施加在数据表上的筛选器 函数,其原
42、型是:ALLEXCEPT(,.)第一个参数是要去除筛选器的数据表,后续的column参 数表示仍然希望保留筛选器函数的那些列,也就是说如果有筛选 器函数是依据这些列设置的,则不会被清除掉,而不在column 参数指定的列上的筛选器函数将全部被清除掉。48822数据筛选基础函数 定义第三个计算二手房每平米均价的度量值如下:每平米均价3=CALCULATE(AVERAGE(houseunit_price),ALLEXCEPT(house,houseeq uipment)这里ALLEXCEPT(house,houseequipment)的作用是:除了house表 equipment列上施加的筛选器函
43、数外,清除施加在houes表上的而 有其他筛选器函数。在此基础上得到的数据行作为 AVERAGE(houseunit_price)计算的数据源。498.2.2数据筛选基础函数上图是基于“每平米均价”度量值构造的矩阵对象,左下图是基于“每平米均价2度量值 构造的矩阵对象,右下图是基于“每平米均价3度量值构造的矩阵对象。房型豪装简装精装毛坯中装简装总计1房1厅1卫46,800.0034,528.5732,791.4321,986.2137,988.1433,302.201房1厅2卫34,100.0060,100.0 047,100.001房2厅1卫42,80 0.0 046,080.0 015,3
44、0 0.0 035,200.0 040,462.502房1厅1卫39,600.0036,078.1038,932.1728,440.6339,063.8137,611.372房1厅2卫22,450.0 039,900.0031,175.002房2厅1卫31,112.5025,950.4131,033.8326,063.7434,889.8330,323.092房2厅2卫35,600.0056,138.4644,150.0 053,356.253月1厅1卫40,775.0 036,644.8341,133.9525,850.0 040,456.0 022,00 0.0 038,676.923房1
45、厅2卫32,411.1142,170.0029,612.5029,700.0 034,487.103房1厅3卫24,700.0024,700.003房2厅1卫38,550.0027,534.5131,225.0528,746.6333,818.1030,499.233房2厅2卫45,194.1229,496.0537,390.7930,199.2233,201.5434,576.953房3厅2卫17,00 0.0 017,000.00总计40,601.4932,296.2634,758.0628,609.6037,437.6222,000.0034,009.20房型简装联毛坯中装简装总计人房型
46、豪装简装联中装简装总计1房1厅1卫)0 9.2034,009.2034,00 9.2034,009.2034,009.2034,009.201房1厅1卫40,601.4932,296.2634,758.0628,60 9.6037,437.6234,009.201房1厅2卫34,00 9.2034,009.2034,009.201房1厅2卫34,758.0637,437.6234,009.201房2厅1卫34,009.2034,00 9.2034,009.2034,009.2034,009.201房2厅1卫32,296.2634,758.0628,60 9.6037,437.6234,009.
47、202房1厅1卫)0 9.2034,009.2034,00 9.2034,009.2034,00 9.2034,009.202房1厅1卫40,601.4932,296.2634,758.0628,60 9.6037,437.6234,009.202房1厅2卫34,009.2034,00 9.2034,009.202房1厅2卫32,296.2634,758.0634,009.202房2厅1卫)09.2034,009.203(0 0 9.2034,009.2034,00 9.2034,009.202房疔1卫40,601.4932,296.2634758.0 628,609.6037J37.6234
48、,009.202房2厅2卫34,009.2034,00 9.2034,00 9.2034,009.202房2JT2卫32,296.2634,758.0637,437.6234,009.203房1厅1卫)09.2034,00 9.2034,00 9.2034,009.2034,00 9.2034,009.2034,009.203房1厅1卫40,60 1.4932,296.2634,758.0628,60 9.6037,437.6222,000.0034,009.203房1厅2卫34,009.2034,00 9.2034,009.2034,009.2034,009.203房1厅2卫32,296.2
49、634,758.0628,60 9.6037,437.6234,009.203房1厅3卫34,00 9.2334,009.203房1厅3卫34,758.0634,009.203房2厅1卫)0 9.2034,009.2034,00 9.2034,009.2034,009.2034,009.203房2厅1卫40,60 1.4932,296.2634,758.0628,60 9.6037,437.6234,009.203房2厅2卫)0 9.2034,009.2034,00 9.2034,009.2034,009.2034,009.203房2厅2卫40,60 1.4932,296.2634,758.0
50、628,60 9.6037,437.6234,009.203房3厅2卫34,00 9.2034,009.203房3厅2卫34,758.0634,009.204自1斤1T34 00 9.204 009.204 00 9.204 00 9.2034 009.204房1厅1卫32,296.2634,758.0628,60 9.6037,437.6234,009.20总计09.2034,009.2034,009.2034,009.2034,009.2034,009.2034,009.20v总计40,601.4932,296.2634,758.0628,609.6037,437.6222,000.003