我正在尝试对我拥有的表进行情绪分析。
我希望将每一行字符串数据传递给 R 脚本,但问题是 Tableau 仅接受聚合数据作为以下参数:
SCRIPT_STR(
'output <- .arg1; output', [comments]
)
这给了我一条错误消息:
# All fields must be aggregate or constant.
最佳答案
来自Tableau and R Integration文档:
Given that the SCRIPT_*() functions work as table calculations, they require aggregate measures or Tableau parameters to work properly. Aggregate measures include MIN(), MAX(), ATTR(), SUM(), MEDIAN(), and any table calculations or R measures. If you want to use a specific non-aggregated dimension, it needs to be wrapped in an aggregate function.
根据您的情况,您可以这样做:
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()
慢得多,因此一旦您对自己的算法有信心结果准确,然后您可以切换到其他功能之一以提高性能。
关于r - 如何将 Tableau 计算字段中的每一行作为参数传递给 R 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30939051/