Spotfire:计算列中值对的频率

时间:2018-04-17 08:24:14

标签: frequency spotfire

我在Spotfire中有以下表格:

ID  Rule  
1   a  
1   b  
1   a  
1   c  
2   a  
2   a  
3   a  
3   a  
3   b  
4   b  
4   c  
5   c  

我需要计算每条规则与其他规则出现的次数。 该表的结果应为:

Couple  Occurrences  
a-b     2            (Explanation: from ID 1 and ID 3)  
a-c     1            (Explanation: from ID 1)  
b-c     2            (Explanation: from ID 1 and ID 4)

或类似的东西:

   a   b   c
a  3   2   1
b  2   3   2
c  1   2   3

(我将忽略a-a,b-b和c-c)。

我不知道如何在Spotfire中获取此功能而不添加太多列(有21亿行和60种不同的规则,因此我不想增加太多此文件的维度)。

你知道我该怎么办?我想我将不得不使用脚本,但我不知道如何构建它。

谢谢!

瓦伦蒂娜

1 个答案:

答案 0 :(得分:1)

我用

解决了我的问题
Rank = DenseRank([row],[data],[ID])

(“数据”是我数据中的附加变量)

Concatenate = UniqueConcatenate([Rule]) OVER (Intersect(AllNext([rank]),[ID],[data]))

然后采用[rank] = 1的组合。 这不是一个完美的解决方案,因为我没有获得价值对,但我获得了我可以在我的数据中找到的每个规则组合。

我仍然对更好的解决方案感兴趣,但也许有人会发现这个答案很有用。

谢谢,

瓦伦蒂娜