Power BI
2019-06-20 17:37:54   4  举报             
     
         
 AI智能生成
  Power BI数据分析及可视化简述
    作者其他创作
 大纲/内容
  数据分析步骤    
     1. Power Query    
     数据查询、清洗  
     与数据源直接对接  
     数据源    
     从网页中提取    
     “获取数据”-->“从Web”  
     仅限网页数据的格式为表格  
     从数据库  
     数据清洗    
     汇总文件夹中的数据    
     “获取数据”-->“文件夹”-->合并  
     “转换”选项卡    
     将第一行用作标题  
     筛选  
     删除列  
     删除重复项  
     修改数据类型    
     单击字段左侧  
     “检测数据类型”可自动识别  
     替换    
     “单元格匹配”:必须满足整个单元格中的值一样  
     填充    
     向上  
     向下  
     移动列    
     拖动  
     拆分列  
     重命名列    
     双击列名称  
     提取  
     格式修整    
     剔除空格  
     所有“应用的步骤”可删除、重新设置、移动互换顺序  
     逆透视    
     二维表 --> 一维表  
     选中要做逆透视的列-->点击“逆透视”  
     转置    
     行列互换  
     反转行    
     将最后一行变为第一行  
     对行进行计数  
     分组依据  
     “添加列”选项卡    
     条件列(与If函数嵌套类似)  
     索引列    
     添加一个从0或者1开头的序号列  
     重复列    
     复制一个列  
     数字计算  
     日期    
     提取出年份、月份等  
     示例中的列    
     写出一个示例答案,余下则可自动填充  
     仅支持文本和日期格式  
     自定义列  
     追加与合并查询    
     追加查询    
     把多张表纵向地汇总到一起  
     合并查询    
     横向地汇总多张表 --> 表的扁平化  
     类似Vlookup  
     需要两张表之间有相互关联的字段  
     联接种类    
     左外部:以左侧的表为中心来合并匹配(未匹配上的也保留)  
     右外部:以右侧的表为中心来合并匹配(未匹配上的会自动添加行在最后)  
     完全外部:两张表匹配的并集(未匹配上的会保留及自动添加)  
     内部:仅保留匹配的行  
     左反:找到左侧表中没有匹配的行  
     右反:找到右侧表中没有匹配的行  
     合并文件  
     2. Power Pivot    
     数据建模、分析  
     关系    
     Lookup表/维度表    
     包含类别属性  
     放于上方  
     一般在行、列、筛选器、切片器  
     数据表/事实表    
     度量值信息  
     数据量大  
     Lookup表中的类别信息在此重复出现  
     (Lookup表)一 对 多(数据表)  
     建立关系    
     在“一”端拖动字段覆盖到“多”端上  
     “开始”选项卡-->“管理关系”  
     “一”端标记为“1”,“多”端标记为“*”  
     矩阵表中,行、列来源于Lookup表,不来源于数据表  
     度量值    
     Power BI公式语言:DAX (Data Analysis Expression)  
     可以直接引用某张表中某列的名称  
     输出的是一个计算结果  
     DAX语言    
     Data Analysis Expression 数据分析表达式  
     公式语言  
     数据类型  
     书写规则    
     直接引用列名称或重复引用其他度量值名称  
     例:度量值=CALCULATE([销售量],'产品表'[咖啡种类]="拿铁")  
     用单引号 ' 引用表,用中括号 [] 表示度量值或列  
     引用列:必须使用限定列 --> 明确所引用的是哪张表中的哪一列  
     引用度量值:不需要限定哪张表  
     换行:Shift+Enter 或 Alt+Enter  
     逻辑运算符    
     And:&&  
     Or: ||  
     函数公式    
     聚合函数 - 计算    
     Sum    
     例:[销售量]=Sum('销售数据表'[数量])  
     Average    
     例:[平均销售量]=Average('销售数据表'[数量])  
     Max    
     例:[最大销售量]=Max('销售数据表'[数量])  
     Min    
     例:[最小销售量]=Min('销售数据表'[数量])  
     Count    
     Countrows:求行的个数  
     CountA:计算列中单元格不为空的数目  
     Countblank:计算列中单元格为空白的数量  
     例:[订单数量]=Countrows('销售数据表')  
     Distinctcount    
     不重复计数  
     例:[门店数量]=Distinctcount('销售数据表'[门店])  
     Calculate函数    
     Calculate函数自带的筛选条件可以更改和覆盖初始的筛选条件  
     语法:Calculate(计算值,条件1,条件2,...)  
     例:拿铁中杯销售量=calculate([销售量],'产品表'[咖啡种类]="拿铁",'产品表'[杯型]="中")  
     表示“或”的并列条件    
     In函数+大括号  
     表示相反:Not in + 大括号  
     All函数    
     删除,扩大筛选条件范围  
     返回结果是表,需要配合calculate和countrows等可引用表的函数使用  
     例:All销售量=calculate([销售量],all('销售数据表'))  
     可以引用表,也可以引用列    
     必须保证All函数所清除的筛选列和初始筛选条件中的筛选列是同一张表同一列  
     所有引用列参数必须来自同一张表  
     若需引用多张表:All(), All(), All(), ...  
     多用于计算占比  
     Allexcept:除指定的某列之外,清除筛选条件  
     Allselected:清除所有显示的筛选条件;多用统计直观合计  
     Filter函数    
     筛选器函数,返回的结果是一张表  
     语法:FILTER('表',筛选条件')  
     常用句型    
     Filter ('表','表'[列]=公式)  
     Filter ('表','表'[列]=[度量值])  
     可设定筛选条件范围大于calculate函数  
     例:Filter销售量=calculate([销售量],filter('门店信息表',[销售量]>200))  
     尽量在Lookup表中使用  
     能用Calculate解决的一定不要使用Filter函数(计算量大)  
     Divide函数    
     语法:Divide (分子,分母)  
     安全除法:在分母为0时防止出现报错  
     “/”分母为0时结果为∞;Divide分母为0时结果为空值(可选)  
     图表会默认隐藏空值  
     If函数    
     语法:If (判断true,则,否则)  
     “否则”可省略  
     关系函数    
     Related    
     类似Vlookup  
     用于从“多”端匹配“一”端  
     例:产品名称=related('产品表'[产品名称])  
     例:收入=[数量]*related('产品表'[价格])  
     以表关联作为基础  
     Relatedtable    
     用于从“一”端匹配“多”端  
     返回的不是唯一值 --> 使用聚合运算  
     例:订单数量=countrows(relatedtable('销售数据表'))  
     Lookupvalue    
     可以对同时符合多个条件进行查询  
     可用于无关联的表  
     语法:Lookupvalue(目标输出结果列, 目标表中搜索的范围1, 资料表中的关联字段1, 目标表中搜索的范围2, 资料表中的关联字段2, ...)  
     例:Lookupvalue('产品表'[价格],'产品表'[咖啡种类],'销售数据表'[咖啡种类],'产品表'[杯型],'销售数据表'[杯型])  
     时间智能函数    
     要先有一张日历表    
     Date,年,月,周,年月,年周,星期几,季度,年季度  
     日历表排序    
     可在“添加日期列”添加辅助列  
     “表格”视图-选择某列-“按列排序”-选择按辅助列排序  
     定制日历表    
     给定制日历表添加一个不重复的ID列,同时保留标准日历表,按定制日历表ID给标准日历表设定ID  
     时间段函数    
     返回的都是一张表  
     DatesYtd    
     本年至今累计  
     语法:Datesytd('日历表'[日期], 截止日期(可选))  
     同理有Datesqtd(本季度累计)、Datesmtd(本月累计)  
     DateAdd    
     按照指定的间隔返回一个时间区间  
     语法:Dateadd('日历表'[日期列],间隔,间隔类型)  
     例:Dateadd('日历表'[日期], -1, year) --> 返回上一年的时间区间  
     可以以年、月、日为间隔单位  
     负数为往前朝向历史,正数为往后朝向未来  
     SamePeriodLastYear    
     与上年同期  
     与Dateadd('日历表'[日期], -1, year)运算结果相同  
     Previousmonth(day/quarter/year)    
     上一个月(日/季度/年)  
     返回的是完整的时间段  
     可能扩大原有上下文  
     Nextmonth(day/quarter/year)    
     下一个月(日/季度/年)  
     Datesbetween    
     指定开始和结束日期之间的时间段  
     语法:Datesbetween('日历表'[日期列], 开始日期, 结束日期)  
     Datesinperiod    
     根据某一时间节点来调整时间区间  
     语法:Datesinperiod('日历表'[日期列], 开始日期, 间隔, 间隔类型)  
     例:Datesinperiod('日历表'[日期],"2015-01-01",1,month) --> 以2015-01-01为起点,向后数1个月  
     时间点函数    
     用于指定某一个特定日期  
     返回一个有唯一值的表,这个值是某一个日期  
     Firstdate/Lastdate    
     求最早的日期  
     在引用列时,等于Min('日历表'[日期])  
     可以引用表(Min不可以)  
     例:度量值=Firstdate(All('日历表'[日期])  
     Endofmonth (quarter/year)    
     返回本月(季度/年)的最后一天  
     Startofmonth (quarter/year)  
     计算类函数  
     Values函数    
     返回由一列构成的一个表,该表包含来自指定表或列的非重复值  
     Hasonevalue函数    
     判断是否只有一个值  
     返回“真”或“假”  
     X类函数    
     行上下文函数  
     SumX    
     先计算,后对所有计算结果求和  
     例:销售额=SumX('销售数据表',[价格]*[数量])  
     对显示的数据求总计:SumX(Values('表'[列]),[度量值])  
     RankX函数    
     通过度量值输出排名  
     语法:RankX('表',算术表达式,值,顺序0或1,排序方法)  
     例:销售量排名=rankx(all('门店信息表'),[销售量])  
     排序方法    
     Skip(默认):并列时下一名跳过  
     Dense:并列时下一名紧接上一个名次数字  
     TopN函数    
     返回前N行的表  
     语法:TopN(前几名,想要提取的表,排序依据的度量值,升序/降序)  
     上下文    
     筛选上下文    
     针对列(竖向)  
     行上下文    
     针对行(横向)  
     行上下文不会自动转换成筛选上下文 --> 如果需要转换,必须用Calculate函数  
     所有的度量值都自带Calculate函数的功能  
     分组    
     方法1:编辑查询器-添加列-条件列  
     方法2:IF、Switch函数  
     方法3:柱形图上直接选择分组    
     选择柱子 - 右键 - 分组 - 编辑组 - 修改名称  
     方法4:列上右键 - 新建组  
     辅助表    
     不与任何表关联  
     通常用于切片器输入  
     “建模”选项卡 - “新建参数”  
     3. Power View    
     数据可视化  
     一般将数据的类别放入轴和图例中,将度量值放入值中  
     列序列:把列值按照某一分类分开  
     选中图表-->“可视化面板”-->“分析”中,可添加辅助线(平均、最大、最小等)  
     “Column by”&“Row by”:可按照不同类别把图表分开  
     筛选器    
     视觉级    
     针对所选中的可视化对象  
     页面级    
     针对该文件中不同页面  
     报告级    
     针对整个PBI文件  
     切片器    
     可视化对象  
     多种显示方式:时间轴、列表、下拉等  
     钻取    
     添加层次结构(如日期中添加季度、月份)  
     单击图表上的“钻取”按钮可以实现层次钻取功能  
     交互式分析    
     选取某个图表上某个字段,其余图表自动高亮该字段数据  
     编辑交互    
     筛选:只显示该字段数据  
     突出显示:即高亮显示该字段数据  
     无:取消交互效果  
     分享报告    
     “发布”:将数据报告上传到Power BI服务中  
     在Power BI服务中,选中该报表-->“文件”-->“发布到Web”:可生成一个超链接供任何人以网页形式访问数据报告  
     <iframe>代码:可以嵌入电子邮件或网站中,直接在页面上查看该数据报告  
     快速见解    
     Power BI服务-->数据集-->快速见解  
     一系列分析图表将会自动生成  
     以问题生成报表    
     选择报表-->固定活动页面-->生成仪表盘  
     方法论    
     BI=数据 x 业务  
     数据    
     类别  
     度量值  
     数据分析:用分类和比较的方法来回答问题(What, Why, How)  
     比较    
     不同类别同一度量值 --> 99%  
     同一类别不同度量值 --> 1%  
     可视化原则    
     有没有回答读者想要知道的问题?  
     读者是否需要做算术题?  
     视觉冲击力、精确程度、数据丰富度  
    
 
 
 
 
  0 条评论
 下一页
  
   
  
  
  
  
  
  
  
  
  
  
 