R/Python带领Tableau走进大数据机器学习

作者: Myth_W | 来源:发表于2018-02-07 12:45 被阅读339次

    信息化技术的飞速发展,造就了大量信息的爆发性增长,海量信息被IT系统所传输、使用、保留和存储,成为海量的数据,大数据时代已经来临。在大数据时代,数据不仅仅是信息的简单记录和保存,更是蕴藏着巨大商业价值的“宝藏”,数据已经成为了企业的重要战略资产,数据分析则对企业的商业发展起着举足轻重的作用,成为企业重点关注的领域。

    首先今天的主角是Tableau,不是R,也不是Python,更不是机器学习。那为什么他们三者却擦出火花了。带着疑问我们先聊聊他们都有那些十八般武艺。

    Tableau(自助式可视化数据分析工具)

    独创的VizQL技术

    VizQL是一种可视化查询语言,可将拖放动作转化为数据查询,然后以可视化的形式表达数据。通过概括查询和分析的潜在复杂性,VizQL显著提高了人们查看和理解数据的能力。 由此实现的直观用户体验让人们的问题随想随答。VizQL 是数据分析和可视化领域的重大进步。与传统方法相比,VizQL可以更深入地理解数据,更快速地展开工作,最高可以快到 100倍。

    强大的实时查询引擎

    借助 Tableau 实时查询引擎这一开创性技术,人们可以在本地查询数据库、多维数据集、数据仓库、云数据源甚至 Hadoop,无需进行任何编程或高级开发。 通过简单易用的点击式界面,人们可以轻松查询各种不同的数据源。无论数据大小如何,单击几次鼠标即可连接。 即时访问其他数据源。 数据连接与合并简单易懂,即使数据库新手也能轻松掌握。

    Hyper内存数据引擎

    Hyper 是 Tableau 新推出的内存驻留数据引擎技术,可对大型或复杂数据集快速进行数据摄取和分析查询处理。数据提取的生成速度最多可提高至原来的 3 倍,确保您始终获得最新数据。查询性能最多可提高为原来的 5 倍,有助于您保持工作连贯性。您可以无缝升级到 Hyper;只需升级到 Tableau 10.5 即可,无需进行任何数据迁移。
    Hyper 得益于更强大的提取生成和刷新性能,以及对更大数据集的支持,客户可以根据业务需要决定是否提取数据,无需担心时间安排上的限制。此外,Hyper 可以在短短几秒钟内完成大数据集查询,从而让客户能够保持分析工作的连贯性。由于查询速度极快,复杂的仪表板可以在更短的时间内打开,筛选器可以更加流畅地运行,新添加的字段可以几乎毫无延迟地显示在可视化中。
    它可以在几秒钟之内对几十亿行数据完成临时分析。Hyper 是 Tableau 平台的核心技术,它利用专有的动态代码生成机制和最先进的并行方法提高数据提取的生成速度及查询的执行速度。

    此外,Tableau给用户提供了一个简洁易用的使用界面,使得处理规模巨大的,多维的数据时,也可以即时从不同角度和设置下看到数据所呈现的规律,其自动生成和展现的图表,也丝毫不逊色于互联网美工的编辑水平。

    关联分析

    R

    在大数据时代下,随之引起了数据挖掘,数据分析,机器学习等的迅速发展。于此同时,也让人们越来越注意到R语言功能的强大。R语言以其语法简单,做图优美,开源免费的特点,在企业里备受欢迎。

    Python

    Python是一个强大的,灵活的,开放的,易于学习的源语言,使用方便,并具有强大的数据操作和分析库。其简单的语法使编程新手很容易学习和掌握,经历过Matlab、C / C++、java、或Visual Basic,Python提供了一个独特的组合,都能使用编程语言以及使用方便的分析和定量计算。

    Python能用来做什么

    脚本这些简短的程序自动执行常见的管理任务,如在系统中新增用户、将文件上传到网站、在不使用浏览器的情况下下载网页等。

    网站开发作为快速创建动态网站的工具,Django、Bottle和Zope等众多Python 项目深受开发人员的欢迎。

    文本处Python 在字符串和文本文件处理方面提供了强大的支持,包括正则表达式和Unicode。

    科学计算网上有很多卓越的Python 科学计算库,提供了用于统计、数学计算和绘图的函数。

    需要最大限度地减少程序员花在项目上的时间时,Python 通常是最佳选择。


    进入重要环节:

    Tableau与R/Python的集成

    在2013年8.1的发布,Tableau引入了R集成,可以在计算字段中调用R脚本。这就打开了K均值聚类,随机森林模型情感分析的可能性。随着Tableau 10.1的发布,我们可以享受到一个全新的功能:通过TabPy(Tableau Python服务器)进行Python集成

    • 一、如何设置Rserve/TabPy
      【R部分】
      下载R
      安装并运行Rserve:
      install.packages("Rserve")
      library(Rserve)
      Rserve()
      通过帮助-设置和性能-管理外部服务连接
      输入服务器地址/端口(默认:6311)
      【Python部分】
      下载并安装Anaconda
      Github下载TabPy Server
      解压后运行setup.bat(Windows)
      /setup.sh(Linux or MacOS)
      创建Tableau-Python-Server环境(需要10分钟)
      在新环境环境中安装必要的packages
      初始化服务器并提示安装地址及下次启动
      双击启动(D:\Anaconda3\Lib\site-packages\tabpy_server/startup.bat)
      通过帮助-设置和性能-管理外部服务连接
      输入服务器地址/端口(默认:9004)
    启动Rserve 连接Rserve 启动TabPy 连接TabPy

    在 R 表达式中,使用 .argn(带前导句点)引用参数(.arg1、.arg2 等)
    在 Python 表达式中,使用 _argn(带前导下划线)。

    SCRIPT_BOOL(返回指定表达式的布尔结果)
    R 示例中:
    SCRIPT_BOOL("is.finite(.arg1)", SUM([Profit]))
    Python 的命令将采用以下形式:
    SCRIPT_BOOL("return map(lambda x : x > 0, _arg1)", SUM([Profit]))

    SCRIPT_INT(返回指定表达式的整数结果)
    R 示例中,使用 k-means clustering 创建三个群集:
    SCRIPT_INT('result <- kmeans(data.frame(.arg1,.arg2,.arg3,.arg4), 3);result$cluster;', SUM([Petal length]), SUM([Petal width]),SUM([Sepal length]),SUM([Sepal width]))
    Python 的命令将采用以下形式:
    SCRIPT_INT("return map(lambda x : int(x * 5), _arg1)", SUM([Profit]))

    SCRIPT_REAL(返回指定表达式的实数结果)
    R 示例中将温度值从摄氏值转换为华氏值:
    SCRIPT_REAL('library(udunits2);ud.convert(.arg1, "celsius", "degree_fahrenheit")',AVG([Temperature]))
    Python 的命令将采用以下形式:
    SCRIPT_REAL("return map(lambda x : x * 0.5, _arg1)", SUM([Profit]))

    SCRIPT_STR(返回指定表达式的字符串结果)
    R 示例中:
    SCRIPT_STR("is.finite(.arg1)", SUM([Profit]))
    Python 的命令将采用以下形式:
    SCRIPT_STR("return map(lambda x : x[:2], _arg1)", ATTR([Region]))

    R学习资源

    快速开始指南:
    https://www.tableau.com/sites/default/files/media/Whitepapers/whitepaper_rtableau8.1_part1_zh-cn.pdf
    教学视频:
    https://www.tableau.com/zh-cn/learn/tutorials/on-demand/r-integration
    R与可视化:
    https://www.tableau.com/sites/default/files/media/Whitepapers/power_of_r_and_visual_analytics_zh-cn_0.pdf
    常见问题:
    https://www.tableau.com/sites/default/files/media/Whitepapers/whitepaper_r-faq_zh-cn.pdf

    TabPy学习资源

    TabPy Server安装指南:
    http://alexloth.com/2016/11/06/tabpy-tutorial-integrating-python-tableau-advanced-analytics/
    https://github.com/tableau/TabPy/blob/master/server.md#extending-the-environment
    TabPy教程:
    https://community.tableau.com/docs/DOC-10856
    TabPy 应用实例:
    https://www.tableau.com/zh-cn/about/blog/2016/11/leverage-power-python-tableau-tabpy-62077
    使用TabPy构建高级分析应用程序:https://www.tableau.com/about/blog/2017/1/building-advanced-analytics-applications-tabpy-64916


    最后,文中与编程语言和系统相关的措辞可能不准确或有误用,请留言指正。本文略长,感谢你有耐心读到这里,请动动手指,在下方为作者也为自己点一个大大的赞!

    如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作。

    相关文章

      网友评论

        本文标题:R/Python带领Tableau走进大数据机器学习

        本文链接:https://www.haomeiwen.com/subject/qukwzxtx.html