我在Power BI中有两个表,一个生成表,一个来自带有计算列的原始数据,每个表都有一个十进制列格式化为1位小数。
生成表DAX:
Tenths = GENERATESERIES(0, 2000, 0.1)
计算列DAX:
RoundedTime = MROUND('LIVE Network'[Time], 0.1)
格式:
尝试在关系中连接这两列时,生成的可视化只有非常稀疏的数据,表明连接不能按预期工作。
我认为这是由于“略微关闭”错误,其中列中包含的实际值不会被异常舍入到小数点后1位,实际上如果我从生成的表中删除格式,我可以看到大多数值实际上是类似于5.9999999999
而不是6.0
。如下所示:
在某些时候,数字正确显示1位小数值,在这些点我的视觉显示数据,所以我坚信这里的舍入问题是导致连接失败的原因。
将格式更改为常规时,另一个表中的计算列确实具有到小数点后1位的精确舍入。
这个问题是否有任何变通方法或实际解决方案?
将计算列添加到生成的表中解决了我的问题。注意到MROUND
运行正常,我在生成的表上尝试了它,它解决了我的问题。
因此,使用生成的表创建:
Tenths = GENERATESERIES(0, 2000, 0.1)
我在该表中添加了一个计算列:
RoundedTenths = MROUND(Tenths[Tenth], 0.1)
简而言之,使用MROUND
正确舍入小数。