Tableau api 如何在tableau中聚合表计算
这是我的工作簿 在该工作簿上,我为每个用户计算每个事务之间的时间差。我首先构建的是带此计算的过滤器PULTableau api 如何在tableau中聚合表计算,tableau-api,aggregation,rolling-computation,Tableau Api,Aggregation,Rolling Computation,这是我的工作簿 在该工作簿上,我为每个用户计算每个事务之间的时间差。我首先构建的是带此计算的过滤器PUL {Fixed [User Id]: sum( if [Created At]<=[END_DATE] then 1 else 0 end)}>=2 AND {FIXED [User Id]: sum( IF [Created At]<=[END_DATE] AND [Created At] >= [START_DATE] THEN 1 ELSE 0 END)}&g
{Fixed [User Id]: sum(
if [Created At]<=[END_DATE] then 1 else 0 end)}>=2
AND
{FIXED [User Id]: sum(
IF [Created At]<=[END_DATE] AND
[Created At] >= [START_DATE] THEN 1 ELSE 0 END)}>=1
lookup(min(([Created At])),0) >= [START_DATE] and
lookup(min(([Created At])),0) <= [END_DATE]
但它返回错误
datediff,调用时使用字符串、整数、整数
对于Max和Min,您可以继续操作,就像我为您之前的问题提供了解决方案一样。(对于max,创建秩计算,排序是降序的;对于Min,创建第二个秩计算,排序是升序的)
然而,就我对tableau中表格计算的了解而言,tableau不允许对这些表格计算字段进行硬编码,因此您不能-
- 进一步汇总这些结果
- 对这些对象执行LOD计算
script real
类型的函数实现的,这些函数同样属于table calculation
类别,并且将应用上述限制
祝你好运
编辑正如Alex Blakemore在另一个问题/答案上所建议的,您可以稍微调整一下窗口功能。假设datediff的计算字段名为[CF]
,然后使用以下计算创建四个计算字段
window_max([CF])
window_min([CF])
window_avg([CF])
window_median([CF])
并分别命名为[CF max]
,[CF Min]
,[CF avg]
,[CF Median]
现在编辑表格计算,每四个表格中都有嵌套,如下所示-
- 单击嵌套计算向下箭头。CF将在那里列出。将其计算更改为
,级别为特定维度
,并在evrey最深
用户id重新启动。截图是
- 然后再次单击嵌套计算向下箭头。选择CF_max/min/med/avg(视情况而定),并在表格向下的情况下创建表格计算
查看我编辑的答案。我想这是你在舞台上能做的最好的了。你可以看看hi anil,我只是想知道,为什么我的CF min有2个min值,有1和2,为什么不像你的截图那样为零?我只是按照你的步骤,根据你的截图进行同样的计算,但当我将其更改为CF min时,这些值就变成了正确的值(0值)
window_max([CF])
window_min([CF])
window_avg([CF])
window_median([CF])