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

时间:2015-06-19 13:10:55

标签: r tableau sentiment-analysis

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

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

SCRIPT_STR(
  'output <- .arg1; output', [comments]
)

这给了我一条错误信息:

# All fields must be aggregate or constant.

2 个答案:

答案 0 :(得分:8)

来自Tableau and R Integration文档:

  

鉴于SCRIPT _ *()函数用作表计算,它们   要求聚合度量或Tableau参数才能正常工作。   聚合度量包括MIN(),MAX(),ATTR(),SUM(),MEDIAN()和   任何表计算或R度量。如果你想使用特定的   非聚合维度,需要包含在聚合中   功能

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

SCRIPT_STR(
  'output <- .arg1; output', ATTR([comments])
)

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

IF MIN([Dimension]) = MAX([Dimension]) THEN 
[Dimension] ELSE * (a special version of Null) END

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

注意:在大型数据集中,它可能明显慢于MIN()MAX(),因此一旦您确信您的结果是准确的,那么您可以切换到其中一个性能的其他功能。

答案 1 :(得分:2)

尝试MIN([评论])并确保您的viz具有适当的尺寸,以便对数据进行细分,以便为每个维度组合获得单个评论。