Nlp 突出显示表格中关联字符串和字符串变量中的特定单词

Nlp 突出显示表格中关联字符串和字符串变量中的特定单词,nlp,data-visualization,tableau-api,Nlp,Data Visualization,Tableau Api,我的目标是为包含在关联字符串中的关键字和整个字符串变量创建一个突出显示函数 在尝试了“contains”函数、尝试了这些链接中包含的各种逻辑(第1、第2-)之后,从Tableau支持部门收到了一个答案,即他们不知道如何突出显示其中包含的关键字,在放弃这个之前,我想尝试一下Stack OverFlow社区 为了举例说明,下表显示了我的目标,其中包含一个关键字和关联字符串的矩阵: 下一步显示了选择关键字的能力,该关键字随后在字符串变量的所有观察值中高亮显示: 我所获得的最接近的结果是,仅突出显示

我的目标是为包含在关联字符串中的关键字和整个字符串变量创建一个突出显示函数

在尝试了“contains”函数、尝试了这些链接中包含的各种逻辑(第1、第2-)之后,从Tableau支持部门收到了一个答案,即他们不知道如何突出显示其中包含的关键字,在放弃这个之前,我想尝试一下Stack OverFlow社区

为了举例说明,下表显示了我的目标,其中包含一个关键字和关联字符串的矩阵:

下一步显示了选择关键字的能力,该关键字随后在字符串变量的所有观察值中高亮显示:

我所获得的最接近的结果是,仅突出显示关联字符串及其整体,而不是更广泛的字符串变量和相关字符串中的关键字:

逻辑如下:

为用户创建一个参数以输入其搜索关键字,并创建一个计算字段以查看关键字是否包含在注释字段中 为注释字段创建并显示高亮显示

要使用参数来提醒注意使用颜色的注释,请执行以下操作: 使用数据类型字符串创建名为“搜索关键字”的参数。选择“全部”作为允许值。 使用以下公式创建名为“匹配”或“颜色匹配”的计算字段:

将此计算字段拖到标记卡上的颜色上 右键单击参数并选择“显示参数控制” 键入要搜索并突出显示的关键字

要使用荧光灯: 创建包含关键字和注释的仪表板后,导航到注释表的选项菜单,然后选择高亮显示>注释 现在将显示一个高亮显示控件,该控件将高亮显示注释行,而不是像参数那样更改文本颜色。 此选项还允许单击关键字,但单击只会突出显示相应的注释,而不是带有关键字的所有注释

作为第三种可能的选择,如果查看者只想查看匹配的单词而不想查看整个字符串,我们可以修改parameter方法,将if语句添加到前面创建的计算字段中:


您对如何调整我所拥有的内容,或者采取不同的方法有什么建议吗?如果您能提供任何帮助,我们将不胜感激。

我相信您知道,Tableau将为整个文本字符串着色,因为CONTAINS条件对整个字符串都是真的。另一种方法可能是将数据重新构造为“长”格式t,每个字1行(如下所示)

这样做将确保Tableau知道每个单词都应该单独计算,并且颜色标记卡将对每个单词进行分区。然后,您可以这样构造工作表。为了确保单词以正确的顺序显示,您需要一个计算字段来创建唯一的行(我称为sort_order
right(“000000”)“+str([句子id]),7)+right(“000000”+str([位置]),7)
。请注意,文本标记卡是按排序顺序排序的,而且拖动/排序标记卡的顺序也很重要

然后,colour_关键字公式简单地类似于
[word]=[keyword Parameter]
(可能检查大小写变体)

我建议您保持原始表的数据结构以及这种长表格式,并通过关系(数据>编辑关系)链接两个数据源,并使用仪表板操作。这将有望满足您的突出显示要求,并意味着减少对其他工作表的返工


我已经向tableau public发布了演示tableau工作簿

您的问题是,要突出句子中的单词,您需要将单词作为tableau变量而不是整个字符串寻址。这是完全可行的,但需要您重新构造原始数据,将字符串分离为其组成单词(并将它们分组以生成句子)。这没有那么难。非常有用的参考资料。我感谢您的评论和链接!@G Hart-这是一个很好的方法,感谢您的解释非常好的回复!我今天正在我的模型上试用。@G Hart-这非常适合我所寻找的。谢谢您在这方面的帮助!
CONTAINS([Key Words], [Search Keywords])
OR CONTAINS([Comments], [Search Keywords])
IF CONTAINS([Key Words], [Search Keywords])
OR CONTAINS([Comments], [Search Keywords])
THEN [Search Keywords]
END