专栏首页学谦数据运营这样的Power BI周分析你见过吗?

这样的Power BI周分析你见过吗?

零售、电商、教育等领域的诸多业务场景中需要按周进行分析,然而Power BI并未提供周粒度的时间智能函数,这让很多人想分析时感觉力不从心、无从下手。

今天我们就来说一说按周分析的几个思路,希望能够帮各位打开思想的束缚,发挥更大的创造力,更好地助力业务发展。

按周进行分析,首先需要创建一个日期表(关于日期表创建的多种方式可参考这篇文章:Power BI创建日期表的几种方式概览),或者在已有日期表中新建列“WEEKDAY”和“WEEKNUM”:

有了周的信息,我们就可以按周进行分析了,先拖一个矩阵看看:

列是星期1到星期7,行是一年的各个周,大概有了初步的样子。

不过,你要做成这样直接给老板,估计老板一巴掌就能把你拍死,啥玩意儿这是。所以我们来稍微美化一下。

先看行上,光秃秃的数字不好看,我们可以添加一下说明:

如果你还想显示这个周到底是哪些日期:

你可以写一个这样的度量值:

周数日期 =

VAR thisweeknum='日期'[年周数]

VAR firstdayofthisweek=CALCULATE(MIN('日期'[Date]),FILTER(ALLEXCEPT('日期','日期'[年度]),'日期'[年周数]=thisweeknum))

VAR monthday1=CALCULATE(MAX('日期'[月份]),FILTER(ALL('日期'),'日期'[Date]=firstdayofthisweek))&"."&CALCULATE(MAX('日期'[日]),FILTER(ALL('日期'),'日期'[Date]=firstdayofthisweek))

VAR lastdayofthisweek=CALCULATE(MAX('日期'[Date]),FILTER(ALLEXCEPT('日期','日期'[年度]),'日期'[年周数]=thisweeknum))

VAR monthday2=CALCULATE(MAX('日期'[月份]),FILTER(ALL('日期'),'日期'[Date]=lastdayofthisweek))&"."&CALCULATE(MAX('日期'[日]),FILTER(ALL('日期'),'日期'[Date]=lastdayofthisweek))

RETURN "("&monthday1&"-"&monthday2&")"

然后在把两列合为一列,或者干脆直接一列搞定也可以。

再看列,按照习惯我们一般用汉字,所以:

周几 = 
SWITCH(
  '日期'[周几.数字],
  1,"周一",
  2,"周二",
  3,"周三",
  4,"周四",
  5,"周五",
  6,"周六",
  7,"周日"
  )

这样是不是就好多了:

不过,细心的你已经发现了,列的排序是乱的,并不是按照周一到周日或者周日到周六的顺序排的。很明显,此时要排序,结果发现列是不支持直接排序的:

所以我们需要用到一个初学者经常会问的【按列排序】了。选中“周几”,点击按列排序,按WEEKDAY进行排列,是不是符合你的要求了:

再经过一些恰当的修饰,就得到了一个比较美观的按周展示的矩阵了:

当然,仅看销售额数据自然是不够的,中国式复杂报表要求我们必须同时查看大量的信息,比如:

你也可以通过柱状图和折线图的方式进行同比环比分析:

这样你就可以从容应对中国式复杂报告的周分析了。

再多说一点,如果你嫌上表第一列的宽度太大,而又想同时包含这些信息,那么你可以通过手动调整列宽的方式将其分为两行:

不过,我们一般是不建议这么做的。自动调整列宽对于绝大部分矩阵来说是很必要的,否则可能会出现领导打开报告看到的是这样一幅画面:

那有没有办法既让矩阵自动调整列宽,又让首列自动分为两行呢?

答案是肯定的:

如何实现呢?敬请关注学谦数据运营,下回分解。

本文分享自微信公众号 - 学谦数据运营(XueQianData),作者:陈学谦

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-04-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何在PowerBI中同时使用日期表和时间表

    首先,由于日期表和时间表不能叠加在一起(原因在前文说过了),所以肯定是两张表单独和事实表进行关联,而事实表中日期和时间是在同一列。

    陈学谦
  • 通过"日期偏移"来解决"因中美习惯不同而导致的PowerBI相对日期切片器周分析错误"问题

    不过,在进行周分析时,如果选择的范围是周(日历),那么你会发现日期的选择范围和我们预想的不一样(分析时日期是2020年5月20日周三):

    陈学谦
  • PowerBI中短小而强悍的相对日期切片器

    在Power BI中使用日期切片器时,选择使用相对日期是很方便的。在很多业务场景中,我们总是要查看过去n天/n周/n月的情况。

    陈学谦
  • PowerBI 时间智能终极奥义,用 WTD 练手

    单纯讲解时间智能函数犹如盲人摸象,不见全貌,更不见本质。 我们之前写过很多关于时间智能函数的文章,但文本将是最为本质以及最重要的。本文属于 BI佐罗 Powe...

    BI佐罗
  • 东哥陪你学PowerBI——日期表

    常在群里看到很多关于对日期表的疑问和困惑,尤其是刚进群的初学者。那今天我们就来聊一下,日期表是怎么回事,在业务分析里究竟起了什么作用?

    公众号PowerBI大师
  • SAP PP计划订单和生产订单的日期计算

    SAP PP 中关于计划订单和生产订单的日期计算 ,计划单的基本完成日期=上级物料需求日期-物料主数据MRP2视图的收货处理时间天数(全部以工厂日历的工作日计算...

    用户5495712
  • JavaScript|日期对象

    在JavaScript中没有日期类型的数据,但我们在开发的过程中经常需要处理日期,所以在这里我将在这里给展示大家如何用日期对象(Date)来操作日期和时间。

    算法与编程之美
  • 【DAX 系列】分析师必备,日期表模板

    很多小伙伴问日期表模板,那这次分享一个截止 2020.1 为止,可以看到的相对好用的日期表模板,这也是罗叔一直使用的模板。

    BI佐罗
  • PowerBI 保持数据刷新后仍显示最后一天

    PowerBI 提供了自动化的报表,每天都会更新。问题是如何保持报告每天都被默认选择为当天?

    BI佐罗
  • Leetcode 142 Linked List Cycle II

    Given a linked list, return the node where the cycle begins. If there is no cyc...

    triplebee

扫码关注云+社区

领取腾讯云代金券