Spotfire 中具有相同值的连续单元格的数量

Number of Successive Cells of a Same Value in Spotfire

我想知道是否可以创建一个计算列来计算有多少个具有相同值的单元格是连续的(即彼此相邻),以便我可以将它除以单元格总数那一栏。 (我只查看列中的 1 和 0。任何帮助或建议将不胜感激,因为我已经为此挠头了一段时间,

列底部的百分比只是 =(1 与另一个 1 接触的数量)/(总行数)--> 我的最终目标

好的,这必须分几步完成。

  • 插入计算列 RowId() 并将其命名为 rid
  • 使用此表达式插入计算列,并将其命名为 [TouchingA]:

If(([Location A]=1) and (([Location A]=First([Location A]) over (Next([rid]))) or ([Location A]=First([Location A]) over (Previous([rid])))),1,0)

  • 使用此表达式插入计算列,并将其命名为 [TouchingB]:

If(([Site B]=1) and (([Site B]=First([Site B]) over (Next([rid]))) or ([Site B]=First([Site B]) over (Previous([rid])))),1,0)

此时,您的数据将如下所示:

接下来,插入一个CROSS TABLE并设置水平轴=(Column Names),垂直轴=(None),单元格值=Sum([TouchingA]) / Max([rid]) as [A Percent], Sum([TouchingB]) / Max([rid]) as [B Percent]

这会显示您想要的值,如下所示。当然,您可以使用适当的 IF 或 CASE 语句将其设置为文本区域或任何您想要的计算值。最后,您可以更改格式以使值成为 % 而不是小数。