我们是一家保险经纪公司。我们的事实表是索赔指标当前表。此表具有多个声明sid-s的唯一行,因此,countrows(声明当前)给出了唯一声明数的正确计数。现在,这个表也有clientid和industrysid。客户与行业之间的关系是,1个行业可以拥有多个客户,1个客户只能属于1个行业。
现在,让我们考虑一个名为claimlagdays的事实,它以claimid的粒度出现在表中。
现在,一个要求是,我们需要找出“同行”总和(claimlagdays)。对于特定客户,这基本上计算为:
客户行业的总和(claimlagdays)为此特定客户端过滤(减去)总和(claimlagdays)。我们称这个措施为A。
与上面类似,我们需要计算“对等”声明计数,这是针对此特定客户端的客户端被过滤(减去)声明数量的行业的声明计数。 我们称这个措施为B。
在最后的计算中,我们需要将A除以B,得到“同伴”平均滞后天数。
所以基本上,这里的困难部分是:找到正在过滤的特定客户的行业,然后将此过滤器应用于事实表(声明指标当前)以找出总索赔数/其他仅适用于此行业的指标。当然,从这个行业数据中减去客户数字以获得“同行”衡量标准。必须为每一行完成此操作,保留可能在切片器中应用的任何其他过滤器(日期/业务单位等)
还有一些其他过滤器静态需要考虑,这些过滤器存在于其他表中,例如“索赔类型”(=赔偿/医疗)和索赔状态(=已关闭)。
对于措施B
我尝试创建一个计算列,如下:
Claim Count_WC_MO_Industry=COUNTROWS(FILTER(FILTER('Claim Metrics Current',RELATED('Claim WC'[WC Claim Type])="Medical" && RELATED('Coverage'[Coverage Code])="WC" && RELATED('Claim Status'[Status Code])="CL"),EARLIER('Claim Metrics Current'[IndustrySID])='Claim Metrics Current'[IndustrySID]))
然后我创建了度量
Claim Count - WC MO Peer:=CALCULATE(SUM([Claim Count_WC_MO_Industry])/[Claim - Count])- [Claim - Count WC MO]
{我做了一笔钱,因为表格模型不直接允许我使用计算列作为度量,没有任何聚合。而且,这没有任何意义,因为表格模型不会理解要采取哪一行}
上述措施的第二部分显然是特定客户的索赔数,并附上上述过滤器。
这些数字都是错误的。我没有得到客户明智或年度分离的行业数量或同行数量。我只得到了衡量标准中所有行业数量的总和。
我怀疑这是因为正在进行的总和。但是,我真的没有选择,是的,因为我不能使用计算列作为没有聚合的度量...
如果您认为此处提供的信息不充分,并且您希望我提供一些数据(假人),请告诉我。我很乐意帮忙。
答案 0 :(得分:0)
因此,假设您通过前端过滤特定客户端,听起来只是想要
package main
import "fmt"
type name struct {
X string
}
func main() {
a := []name{name{"Abbed"}, name{"Ahmad"}, name{"Ghassan"}}
nameReader(a)
}
func nameReader(array []name) {
for i := 0; i < len(array); i++ {
fmt.Println(array[i].X)
}
}
只是适当客户延迟天数的基本衡量标准,包括您的静态过滤器。
ClientLagDays :=
CALCULATE (
SUM ( 'Claim Metrics Current'[Lag Days] ),
Static Filters Here
)
这会删除客户端上的过滤器,但会保留Industry上的过滤器以获得整个行业的延迟天数。
IndustryLagDays :=
CALCULATE (
[ClientLagDays],
ALL ( 'Claim Metrics Current'[Client] ),
VALUES ( 'Claim Metrics Current'[IndustrySID] )
)
直截了当。
然后重复索赔计数,然后为PeerLagDays:=[IndustryLagDays]-[ClientLagDays]
取[PeerLagDays] / [PeerClaimCount]
。