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

时间:2016-07-25 13:29:20

标签: calculated-columns spotfire

我想知道是否有可能创建一个计算列,该列将计算相同值的多少个单元格是连续的(即,彼此相邻),以便我可以将其除以该列中的单元格总数。 (我只是看着专栏中的1和0。任何帮助或建议都会受到高度赞赏,因为我已经在这一段时间内摸不着头脑了,

enter image description here

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

1 个答案:

答案 0 :(得分: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)

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

SpotfireTouching

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

这将显示您想要的值,如下所示。当然,您可以使用正确的IF或CASE语句在文本区域或任何其他任何地方设置计算值。最后,您可以更改格式以使值为%与十进制。

enter image description here