如何将每一行作为参数传递给Tableau计算字段中的R脚本

use*_*445 4 r sentiment-analysis tableau-api

我正在尝试对我拥有的桌子进行情绪分析.

我希望每行字符串数据都传递给R脚本,但问题是Tableau只接受汇总数据作为参数:

SCRIPT_STR(
  'output <- .arg1; output', [comments]
)
Run Code Online (Sandbox Code Playgroud)

这给了我一个错误信息:

# All fields must be aggregate or constant.
Run Code Online (Sandbox Code Playgroud)

Ste*_*pré 8

Tableau和R Integration文档:

鉴于SCRIPT _*()函数用作表计算,它们需要聚合度量或Tableau参数才能正常工作.汇总度量包括MIN(),MAX(),ATTR(),SUM(),MEDIAN()以及任何表计算或R度量.如果要使用特定的非聚合维度,则需要将其包装在聚合函数中.

在你的情况下,你可以这样做:

SCRIPT_STR(
  'output <- .arg1; output', ATTR([comments])
)
Run Code Online (Sandbox Code Playgroud)

ATTR() 是一个特殊的Tableau聚合,它执行以下操作:

IF MIN([Dimension]) = MAX([Dimension]) THEN 
[Dimension] ELSE * (a special version of Null) END
Run Code Online (Sandbox Code Playgroud)

它在构建可视化时非常有用,而且您不确定数据的详细程度和发送的内容

:它可以比显著慢MIN()MAX()在大型数据集,所以一旦你确信你的结果是准确的,那么你可以切换到性能的其他功能之一.