可能由于水平不够的原因,按这里的方式单维度没有问题,但是多维度目前不行,然后通过对数据的处理后,实现如下图的结果
②def新增列过滤- FineBI帮助文档 FineBI帮助文档 (fanruan.com)
1、文档的帖子中用def函数目前适用单维度,如果是多维度的时候会存在问题,通过对数据的处理后可以动态实现多维度的显示前N个。如下图最终需要按地区加人员动态显示前3名
最终结果如下
实现步骤详细如下
第一步:对数据进行分组汇总处理,按地区加人员进行汇总
第二步:增加一个辅助列,常量设置全部为数字1
第三步:对这个辅助列1进行累计求和,维度只按地区(dq)字段进行累计
第四步:对地区与数量字段排序
第五步:按地区,再次对辅助列1进行累计值计算,因为上面第四步排序后,累计1的顺序会变了,此时可以看到累计2的数字序号是按数量降序排列出来了
第六步:对累计2这一列字段进行过滤,筛选只要小于等于前N的即可
最后按这个数据源进行制作需要的表格或者图表就行,FineBI中只要你有想法,会函数再结合内置的命令功能,那么你可以增加多列辅助列最终实现你需要的结果,工作本来就难,有时候不用想着我需要一个函数或者一步解决问题,合理利用工具完成工作就行,领导只关心结果能不能实现。
|