第70天知识点:IFERROR函数
最近,收到了一位小伙伴的私信,大概内容就是:
他在制作图表时按区域添加了均值线,但却遇到一个奇怪的问题,添加均值后,发现有些区域能显示出均值线,有些区域的均值线却“消失”了。
这是为什么呢?
检查了一下计算过程,发现也没有什么问题。
于是就很纳闷:
什么原因导致的有些区域能显示出均值线,有些区域又不显示?
于是,我们拿到数据,回溯了一下数据处理步骤。
发现问题原来出在这:
在计算完成率(完成率=实际值/目标值)的过程中,目标值也就是被除数出现了0,导致完成率出现无穷值。
因为无穷值与任何值计算的结果都是无穷值,所以最终导致含有无穷值的区域均值线显示不出来。
那遇到出现无穷值或者异常值的情况该怎么办呢?
今天就给大家介绍一个专门处理异常值的函数:IFERROR函数。
但需要注意的是,这里的异常值仅仅指正负无穷值,并不包含空值。
对于空值,我们可以使用ISNULL函数去进行处理,前面我们专门分享过一篇文章,这里就不再展开详细讲解了。
关于IFERROR函数的用法,我们通过一张函数卡片给大家展示。
所以,为了解决这个问题,我们可以通过IFERROR函数修正一下完成率的值。
修正方式也有很多种,可以选择在数据集中通过新增公式列来实现,也可以直接在组件中通过添加计算字段来实现。
这里我们以新增公式列为例。
结果如下:
这里,你也可以使用你认为合适的默认值去替换这个无穷值。
当目标值为0时,完成率将不会显示为无穷大,而是被替换为你设定的默认值。
使用修正后的完成率重新计算均值,你会发现“消失”的均值线神奇地回来了!
Q:有小伙伴会疑惑:门店5 的完成率也是个异常值吗?
A:并不是,门店5的完成率只是因为小数位数较多而采用了科学计数法显示,实际上并不影响后续计算。
Q:Excel导入的数据表,小数点后的精度降低了,能设置吗?
A:上传到 FineBI 后为了方便查看数据表,数值默认只显示两位。但是不代表未显示的小数位数丢失了,只是隐藏了而已。所以实际也不会影响后续的计算结果。
数据集中不可以直接设置小数位数,但在组件中可以通过设置【数值格式】来展示更多的小数位数。
今天的内容就分享到这儿~希望这个小技巧能帮助你解决数据分析中的一些烦恼。
感兴趣的小伙伴可以自己体验一下哦~ |