【问题标题】:Returning only the unique values from two columns in Spotfire仅返回 Spotfire 中两列的唯一值
【发布时间】:2017-06-22 14:08:21
【问题描述】:

是否有一种方法可以创建一个计算列,该列读取两列并仅返回这两列的唯一值?

示例表:

如何创建类似于上表中 New Column 的内容?

【问题讨论】:

  • 您将需要一个持久化(未计算)的 RowID 值,以便您可以先取消透视此数据。
  • 抱歉,对于 Spotfire 来说还是个新手,所以不太清楚你所说的持久化 RowID 值是什么意思。
  • 您需要在数据源中拥有唯一的行标识符,而不是计算列

标签: spotfire


【解决方案1】:

@J。 Doe- 这是您发布的特定案例的解决方案。

正如@scsimon 所建议的那样,最好找到一种方法来转换您的表格,以便您可以比较 Q1 和 Q2 中的各个元素。

注意: Q1 和 Q2 列中的字符串被作为一个整体而不是单个项目来读取。
示例:'ABC, 123' 被读取为一个字符串,但不被读取为 'ABC', '123'。因此,我们无法比较两列之间的特定元素。

此外,此解决方案仅在 Q2 包含 Q1 时才有效。

使用以下自定义表达式添加计算列。

right(RXReplace([Q2],[Q1],"","g"),Len(RXReplace([Q2],[Q1],"","g")) - 2)

这是输出表:

【讨论】:

  • 谢谢。这似乎确实适用于某些情况,但并非如您提到的所有情况。例如,我有一些实例,其中 Q1 包含 (ABC, 123) 和 Q2 包含 (ABC),在这种情况下,我希望“新列”仅包含 (ABC)。我应该在我原来的帖子中详细说明那个例子。我会研究 scsimon 的建议。
  • @J.Doe- 你能把所有可能的场景贴在你的桌子上吗?
  • @J.Doe- 快速问题 - 在您上面的评论中,如果 Q1 包含“ABC,123”并且 Q2 包含“ABC”,那么唯一值应该是“123”而不是“ABC”根据您最初的要求?你能详细说明一下这个场景吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-23
  • 2016-09-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多