我有一个表“日期”,其列[出勤]包含值和零的混合。我正在寻找 Power BI 的代码,它可以在出勤列旁边的计算列中显示之前的出勤情况,以便我可以使用视觉中的信息来显示 2 个比赛日之间的出勤率差异,除非有更好的方法这样做的方法。
如果站点的出席人数为零,则该站点已关闭,如果我们可以显示零或“站点已关闭”文本。
** **Table "Date"** **
日期 | 出席情况 | 上届比赛出席人数 |
---|---|---|
06/01/24 | 0 | 网站已关闭 |
07/01/24 | 52314 | 网站已关闭 |
08/01/24 | 0 | 网站已关闭 |
09/01/24 | 0 | 网站已关闭 |
10/01/24 | 16895 | 52314 |
11/01/24 | 0 | 网站已关闭 |
12/01/24 | 0 | 网站已关闭 |
13/01/24 | 48536 | 16895 |
14/01/24 | 78236 | 48563 |
15/01/24 | 12247 | 78263 |
16/01/24 | 0 | 网站已关闭 |
17/01/24 | 52314 | 12247 |
我不知道从哪里开始,我可以使用 INDEX 和 MATCH 公式让它在 Excel 上使用不同的数据集,但还没有使用 Power BI 的高水平经验。
我尝试了下面的方法,它只填充下面的行
上一次出席= 计算( MAX('日期'[出勤]), 筛选( '日期', '日期'[日期] = EARLIER('日期'[日期]) - 1 ) )
当我删除 -1 时,它会填充正确的行,但只是与出勤行中的数字相同,而不是之前的出勤数字。
尝试以下操作:
Last Game Attendance Number =
VAR CurrentDate = 'Date'[Date]
VAR PreviousAttendance =
CALCULATE(
MAX('Date'[Attendance]),
FILTER(
ALL('Date'),
'Date'[Date] < CurrentDate
&& 'Date'[Attendance] > 0
)
)
RETURN
IF('Date'[Attendance] > 0, PreviousAttendance, BLANK())
之后,您可以创建另一列来生成标签:
Last Games Attendance Label =
IF('Date'[Last Game Attendance Number] = BLANK(), "Site Closed", FORMAT('Date'[Last Game Attendance Number], "0"))