在Power BI Desktop上,我正在使用多个条件IF语句。我有一个带有用户ID和SecondsToOrder的原始表,如下所示。
UserID SecondsToOrder
00001 2320
00002 13
00003 389
00004 95
... ...
我创建了一个新的计算列MinutesRounded,将秒数舍入为分钟,现在我的表看起来像这样。
UserID SecondsToOrder MinutesRounded
00001 2320 38
00002 13 0
00003 389 12
00004 95 1
... ... ...
现在,我想基于计算所得的列MinutesRounded创建另一列,在该列中,我根据数字将每个用户分配给以下组之一:'<1分钟''<15分钟'和'> 15分钟'。最终结果应如下所示。
UserID SecondsToOrder MinutesRounded Lenght
00001 2320 38 > 15 minutes
00002 13 0 < 1 minute
00003 389 12 < 15 minutes
00004 95 1 < 1 minute
... ... ... ...
我正在通过此声明使用DAX进行操作。
Lenght = IF([MinutesRounded]<1,"< 1 minute",IF([MinutesRounded]<15,"<15 minutes", "> 15 minutes"))
并出现语法错误。严重不明白这里出了什么问题。能否请你帮忙。我收到的错误如下:
The syntax for '"< 1 minute"' is incorrect. (DAX(IF([MinutesRounded]<1."< 1 minute",IF([MinutesRounded]<15."<15 minutes", "> 15 minutes")))).
由于某种原因,我看到点和括号出现在我没有键入的错误中。我该如何解决?
更新:发现原因是POWER BI中的某些区域/键盘设置,这就是为什么我不得不使用分号而不是逗号的原因。代码本身是正确的。
答案 0 :(得分:2)
我完全按照原样使用您的DAX没错:
= IF([MinutesRounded]<1,"< 1 minute",IF([MinutesRounded]<15,"<15 minutes", "> 15 minutes"))
您还可以使用SWITCH:
=
SWITCH (
TRUE (),
[MinutesRounded] < 1, "< 1 minute",
[MinutesRounded] < 15, "<15 minutes",
"> 15 minutes"
)
谢谢