一、安装配置
1、下载R语言,打开R界面
2、运行以下代码,安装包
install.packages('Rserve')
library('Rserve')
Rserve()
3、tableau设置
在tableau中:帮助-设置与性能-管理外部服务器中可连接R/Python
输入“Localhost”(或“127.0.0.1”)服务器名称和端口“6311”
点击“测试连接”,出现下面情况则配置成功
二、tableau 中使用R进行分析
1、原数据情况与处理后数据情况
1)原数据
2)处理生成新字段后
2、分析
1)检测异常值
异常值的定义:超过上四分位数的1.5倍四分位距或低于下四分位数的1.5倍四分位距
新建字段:
代码:
IF SUM([X]) > SCRIPT_REAL(
'quantile(.arg1,0.75)+1.5*IQR(.arg1)',
SUM([X])) OR
SUM([X]) < SCRIPT_REAL(
'quantile(.arg1,0.25)-1.5*IQR(.arg1)',
SUM([X]))
THEN 'Yes'
ELSE 'No'
END
2)线性回归
通过R用线性回归的方式拟合预测值:
新建字段:
代码:
SCRIPT_REAL(
'fit <- lm(.arg1~.arg2);
fit$fitted.values',
SUM([Y]),SUM([X])
)
可视化情况:
3)聚类分析
聚类分析是数据挖掘中无监督的算法之一,R语言可以非常便捷的实现各种聚类算法,如K-Means、K中心、EM期望较大法、层次分析等,下面就是要K均值算法
新建字段:
代码:
SCRIPT_REAL("fit <- kmeans(data.frame(.arg2,.arg1),centers=3);
fit$cluster",
SUM([X]),SUM([Y])
)
可视化结果:
三、总结
1、tableau成功过后可以关闭R界面,并且会保持连接R成功状态,后续再打开使用tableau不用单独设置,定义字段时可以直接用R中的函数。
2、比起Python,有时R中调用函数更方便,不用再单独调用分析包,比如这里进行聚类分析。
3、tableau 中调用R的函数建立字段时,注意参数的用法:
如以下代码,(这里:.arg2,.arg1,分别对应传入的参数:SUM([X]),SUM([Y])
代码中参数必须用:.arg1,.arg2 的形式,但是有时顺序交换不会报错,如:.arg2,.arg1,但是这里用:.arg3,.arg1的形式则会报错。
SCRIPT_REAL("fit <- kmeans(data.frame(.arg2,.arg1),centers=3);
fit$cluster",
SUM([X]),SUM([Y])
)
4、数据大时tableau 使用R可能比较慢,建议在Tableau Prep Builder 中结合R处理好之后再进行可视化
5、参考链接
1)用法:http://bi.dataguru.cn/article-9409-1.html
2)tableau官网数据类型对应关系:https://help.tableau.com/current/prep/zh-cn/prep_scripts._R.htm