Tableau:如何对要在可视化中使用的每个类别中的值进行排名

问题描述

因此,我有一个用于客户的数据集。数据集主要有3列我关注的列;客户端名称-客户端名称,事件数据-举行事件的时间,以及事件成功-事件是否成功。由此,首先,我想按事件日期对每个客户的事件进行排名;日期最早的事件将是客户端的第一个事件,依此类推。接下来,我想根据事件编号来绘制事件的成功率,即第一个事件通常成功率为50%,而第三个事件通常为75%。

在Tableau中,我尝试以多种方式使用RANK函数,但均未成功。它仅在表可视化中起作用,其中包含在排名公式中使用的度量/维度以实现按类别的排名。还有其他方法可以实现这一目标吗?

以下是我理想中想要的最终视觉效果Success Rate Visualization

谢谢!

解决方法

@Hassan我认为等级函数仅在上下文中适用于Tableau。一旦更改了可视化,结果也将更改。但是,可以通过编写简单的代码在R或python中轻松实现。不过,如果事件数量很少,例如4(根据所需的可视化效果的图像),则可以通过添加许多计算字段加1来手动完成。让我告诉你如何。

步骤

  1. 创建一个名为“首次活动日期”的计算字段(LOD)
{Fixed [Client Name] : Min [Event Data]}
  1. 创建名为“第二个事件日期”的列
Second event date

{FIXED [Client name] : MIN(
IF [Event Date] > [First event date] THEN [Event Date] end)
}

3&4。对第三个和最后一个活动日期重复步骤2

  1. 创建计算的字段“事件编号”
IF [Event Date] = [First Event Date] THEN "First Event"
ELSEIF [Event Date] = [Second Event Date] THEN "Second Event"
ELSEIF [Event Date] = [Third Event Date] THEN "Third Event"
ELSE "Fourth Event"
END

请检查您的数据并回复。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...