- ?
11种常用的数据分析处理软件
夜山
展开
BI(BusinessIntelligence)即商业智能,越来越多的智能软件供应商推出可视化数据分析工具,应对企业业务人员的大数据分析需求。然而如果你觉得不是数据分析专业、没有挖掘算法基础就无法使用BI工具?NO,自助式分析工具已经让数据产品链条变得大众化。为了更好地帮助读者选择分析工具,重庆IT培训的老师将为大家介绍数说立方、数据观、BDP等11款BI-商业智能产品,排名不分先后!
1、数说立方
数说立方是数说故事新推出的一款面向数据分析师的在线商业智能产品。最重要的特点是配备百亿级社交数据库,同时支持全网公开数据实时抓取,从数据源端解决分析师难点;另外数说立方搭载了分布式搜索、语义分析、数据可视化三大引擎系统的海量计算平台,实现数据处理“探索式分析”和“秒级响应”的两个核心功能。同时数说立方是数说故事三大主打产品之一,并与其他两大产品数说聚合和数说雷达实现从数据源、数据分析、到数据展示完整的数据解决方案。
优点:
即便是个人免费版,体验和功能仍然非常好;
与自家产品“数说聚合”的无缝接入,支持定向抓取微信、微博等数据;
功能完善,集数据处理、特征工程、建模、文本挖掘为一体的机器学习平台;
可视化视图展现、友好的客户感知页面;
支持SAAS,私有化部署,有权限管理;
缺点:
产品新上市,操作指导页不太完善;
体验过程中有一些小bug;
2、数加平台
数加是阿里云发布的一站式大数据平台,可以提供数据采集、结构化、加工到展示分析整套的一站式数据服务。 可采集不同系统及物理存储的源头数据,在分布式计算平台上进行数据的深度整合、计算、挖掘,将计算的结果通过可视化的工具进行个性化的数据分析和展现,也可直观的展示分析现有云上业务系统的数据库数据。
优点:
有完整的产品规划,功能完善;
图形展示和客户感知良好;
提供SQL查询;
缺点:
需要捆绑阿里云才能使用,一般用户还不能真正使用起来;
部分体验功能一般,有一定的学习成本;
3、Tableau
Tableau是目前市面上较为成功的BI工具。产品既有针对性,又有普适性。拖放式界面,操作简单。数据兼容性强,适用于多种数据文件与数据库,同时也兼容多平台,windows、mac、Online均可使用。而且重要的一点是免费为用户安排现场培训或按需求进行在线培训。
优点:
处于行业领导者地位,功能完善;
有较好的图形展现与客户感知;
新产品开始支持云端展现,但是需要客户端支持;
缺点:
相比于商业智能BI,更像一个基于数据查询的数据展示工具;
处理不规范数据、转化复杂模型比较难;
无法处理大量数据;
国内网络连接Online版速度较慢;
4、Qlik
QlikView只需轻轻单击几下,就可以对所有数据源进行合并、搜索、可视化和分析,可在不影响性能的前提下连接到多个数据源;其次视图种类丰富,界面简洁,互动性强,总体来说是一款简单易用的BI产品。Qlik用户可通过各类可视化效果,将Qlik扩展到任何应用程序中。另外用户也可以通过使用标准的和最新的网络API,可将可视化效果数据嵌入网站或应用程序。
优点:
产品功能完善,图形展现和客户感知良好;
支持SAAS,有权限管理功能;
缺点:
有一定的学习成本;
报表规范性要求很高;
数据抓取功能都非常弱,需要有非常好的数据仓库作为基础;
5、Spotfire
Spotfire服务对象是一线工作人员和日常决策人员,其交互界面形象易懂,无需写脚本语言和编写程序就可以对数据进行添加、分离操作。内置搜索引擎,可以随意查找任意信息。支持R、S+等统计、挖掘功能;有丰富、开源的R模型。标记有自身特色,提供了过滤、钻取等功能,多个标记同时还可以实现图形化的集合运算。
优点:
交互界面形象易懂,即使是普通的业务人员也能轻而易举地进行复杂的数据分析;
不一定要建数据仓库,还可以直接从多个异构数据源提取数据进行分析;
支持SAAS,有权限管理功能;
缺点:
SAAS版只支持30M,由于是国外服务器所以上传很慢;
不适合中国式的固定报表;
进军中国市场较晚,国内案例较少;
工具的适应性范围广,但是难易跨度大;
6、神策分析
神策分析的产品有完整的使用文档,每个模块都有详细的使用说明以及示例,降低了用户的学习成本。而且支持私有部署、任意维度的交叉分析,并帮助客户搭建专属的数据仓库。目前提供事件分析、漏斗分析、留存分析、数据管理等功能,未来预计会增加用户分群、用户人群分析、推送和异常维度组合挖掘等,工具需要付费使用。
优点:
专注于用户行为数据分析,不追求做大而追求做全;
有详细的产品使用文档以及案例;
提供SQL查询;
缺点:
更多的是demo示例,不能开箱即用;
纯dashboard展示,并不能对单独一块数据作自定义分析;
7、BDP
BDP个人版使用免费,只需导入数据,设定分析维度,即可实时得到图表分析结果。产品示例和视频教学很细致,交互页面很友好。每次数据更新,对应的图表也会自动更新,可以免去一些重复分析、制作图表的数据工作。另外,分享环节也很贴心,数据仪表盘可以一键导出,也可直接生成链接分享给他人或分享到微信、微博等社交平台。
优点:
产品支持移动端;手机同步呈现最新数据
用户可以免费使用工具,还有免费公开的数据源;
操作体验流畅,界面友好,功能全,总体来说是一款不错的产品;
即便是个人免费版,体验和功能仍然非常好;
数据可以同步更新,免去了重复劳动的工作;
缺点:
官网的介绍比较简单;
8、永洪BI
永洪BI是一款可在前端进行多维分析和报表展现的BI软件。支持拖拽操作,数据源格式多样,提供不同级别的查询支持,支持跨库跨源连接。另外永洪提供了一款数据存储、数据处理的软件——MPP数据集市,可与BI打通,使得数据查询,钻取和展示的速度大幅度提高。不过其产品用户体验一般,拖拽过于自由,导致仪表盘布局不好控制;主题样式虽多但是给人感觉样式还是很传统。
优点:
商业流程完善,给人专业的感觉;
产品定制化的版本效果不错;
支持的数据接入较多;
缺点:
SAAS版体验很差,有一定的学习成本;
UI的视觉效果一般,整体可视化效果不够现代化;
9、数据观
数据观的功能设计理念是极简、无门槛,所以它最大的特点就是简单。数据观数据来自云端,如:百度 网盘、微盘、salesforce等。数据上传后,马上有推荐图表,引导明确。另外产品的使用没有技术门槛,无需专业IT知识,同时适用于非专业分析师出身的业务人员,可以快速将数据转化成直观的图表,适合一开始接触数据分析工具的非专业数据从业人员。
优点:
注册只需填写邮箱,且支持明道账号登陆;
使用引导明确,支持salesforce、百度云数据导入;
分析结果支持链接分享,大大降低用户的沟通成本;
缺点:
不支持超过20MB的数据上传;
数据导入后,数据分析体验方面存在bug;
产品的使用以点击为主,不支持拖拽操作;
10、FineBI
FineBI分为数据处理、可视分析和分享公用三大功能模块。支持多种数据源,图表风格清爽美观,可选择任意维度分析。分析页面由控件和组件组成,控件和组件的数量是可以添加至任意多个,但是布局的交互比较僵硬,且使用逻辑有点乱,引导不明确。需要安装本地客户端才能使用。
优点:
有较为详细的行业案例与技术方案;
产品演示和资源中心也较为清晰
缺点:
需要使用客户端,增加了使用的不便利性
只有仪表盘展示,BI报表需要另一款产品;
无法处理大量的数据;
11、魔镜
魔镜支持自动拖拽建模,同时可视化效果库十分酷炫。用户可以邀请团队成员到自己的项目,合作进行探索分析,并且按照需求有效控制访问数据的成员权限。产品模块规划完整,有基础企业版到hadoop等5种选择为,而且可以支持定制化服务。但是可能是云平台版的缘故,使用过程中出现不少BUG,企业版的体验可能会相对好一点。
优点:
产品模块的规划比较健全,其中包括数据源导入、数据分析、仪表盘、数据挖掘和数据工厂;
官网的设计不错,模板选择性大,颜值控可能会喜欢;
工具使用指导清晰,使用篇和方法篇等比较详细;
缺点:
产品存在较多的BUG,UI和功能相对其他产品来说较简陋;
部分产品模块并不能切实用于数据分析;
选择一款适用的BI产品,能够大大简化数据分析的繁杂工作,提高分析效率与质量。当然,以上每个工具各有优点,工具地址都给大家了,接下来就是轮到你动手的时候了,找一个自己喜欢的工具,开始吧!
- ?
R语言、Excel哪个更能胜任数据分析?
羊璎
展开
我从事数据分析工作已经有十年之久。最初是出于工作需要,我的经理丢给我一堆数据,我需要处理这些数据。当时我一直使用的工具是 Excel,因为这是我熟练掌握的一款工具。
三年前,我开始接触到 R,一开始因为功能太多而坚决抵制使用。后来我开始琢磨如何使用。现在我基本不怎么使用 Excel 了。这只是我个人的观点,但是如果你要分析数据,R 更胜任这项任务。下面来说说为什么 R 更适合数据分析。
这两款工具的使用方法截然不同。使用 Excel 时,可以通过鼠标点击完成大部分工作,你可以访问界面内不同位置的各种工具。因此 Excel 非常便于使用(熟能生巧),但是用 Excel 处理数据非常费时,而且如果接手一个新项目,你必须单调地重复这些流程。使用 R 时,则通过代码完成所有操作。你把数据载入内存,然后运行脚本来研究并处理数据。这个工具可能不够人性化,但是有以下几点好处。
我认为,从概念上来说,R 更便于使用。如果你在处理多列数据,虽然你只是在处理单个任务,但是却会看到所有的数据。而使用 R 时,数据都在内存中,只有调出数据才能看到。如果你在转换或计算,你会处理相关列或行的子集,其他所有数据都在后台。我觉得这样更便于关注手头的任务。完成任务后,可将其保存在某个数据帧中,其中只包含所需的列或行数据。你建立了正确的数据集,可解决当前的问题。这样做看似无关紧要,但实际上大受裨益。
借助 R,就可以对其他数据集轻松重复相同的操作。因为所有数据都是通过代码进行处理和研究,因此对新的数据集执行相同的操作也就轻而易举了。使用 Excel 时,大多数操作都是通过鼠标点击实现,虽然用户体验不错,但对新的数据重复操作却非常费时而枯燥。而 R 只需载入新的数据集,然后再次运行脚本即可。
实际上,用代码操作也便于诊断并共享你的分析结果。使用 Excel 时,大多数的分析结果都基于内存(数据透视表在这里,公式编辑器在另一个表格上等)。而在 R 中,通过代码执行所有操作,一目了然。
如果你在修正一个错误,你很清楚在哪里操作,而如果你需要共享分析结果,只需复制粘贴代码即可。在线查找帮助时,你能准确说明所用数据,并提出具体的问题。事实上,大多数时候,你在线提问时,人们都是直接贴出准确的代码,来解决你的问题。
R 中的项目组织更简单。在 Excel 中,我要准备一系列表格,可能还要准备多个工作簿,然后适当命名,而且各文件名不得重复。我的项目备注分别保存在各个文件中。我的R语言项目组织单独设有一个文件夹,我处理过的所有内容都放在其中。清理数据、探索性图表及模型。这样便于我理解和查找,也为与我一起工作的其他人提供方便。当然,Excel 也能做到井井有条。我觉得 R 的简洁性更便于使用。
上述几点只能说是锦上添花,而并不是必不可少。在没有这些功能之前,我也用了好几年 Excel,你应该也一样。现在,我想讲讲 R 和 Excel 真正的区别。我想说的是,除了以上那些花哨的小优势之外,R 更适合用于数据分析。原因如下。
你可以把任何数据载入 R。数据的保存位置或保存形式并不重要。你可以载入 CSV 文件,也可以读取 JSON,或者执行 SQL 查询,抑或提取网站。你甚至还可以在 R 中通过 Hadoop 处理大数据。
R 是一个完整的工具集,使用的是数据包。在分析数据时,R 比 Excel 更实用。你可使用 R 执行数据管理、分类和回归,也可以处理图片,并执行其他所有操作。如果机器学习是你的专业,那能想到的任何算法都是小菜一碟。目前,R 可用的数据包逾 5,000 个,因此无论你要处理什么类型的数据,R 都能应付自如。
R 的数据可视化效果非常卓越。说句实话,Excel 的图表非常出色,简单易懂。但 R 的效果更好。
我觉得这是 R 最实用的功能之一。借助 ggplot2,你可以快速创建所需的各种图表,并根据图表形状自行调整。在你熟悉了如何用 ggplot2 创建一个图表后,任何其他图表都不在话下。ggplot2 还能制作更多类型的图表。你能用 Excel 创建 散点图矩阵吗?用 R 就能轻松创建这种矩阵,CDF plot 也是如此。Excel 棋差一招。
Git 版本控制。我一向习惯保存多个版本的分析结果。Git 是至今为止我找到的最好用的工具。 用 RStudio 作为编辑器,其支持项目。创建一个项目仓库,然后你就能跟踪数据研究的不同版本。你可以创建不同版本的 Excel 文件,但是这些保存的二进制文件无法显示相互之间的更改部分。
而 R 非常简单。 我已经说了很多理由。总之,Excel 是一款不错的数据分析工具。我相信它能不负众望完成所有任务。但是,如果你只有这一款工具,则会大大影响你的工作效率。相比之下,R 更好用,而且提供的工具集模块更完整。而缺点在于不是非常易于上手,用户一开始相对要花很多时间学习使用。
如果坚持下去,就会有所收获,不仅对数据更了解,还提高了自己的能力。
每个人的使用习惯不同,对数据分析来说不管是R语言还是Excel只要能高效运用在工作当中,都是好工具。
End.
来源:网络大数据
ps:大家可以在评论区留言,一起讨论下你更喜欢R还是Excel,并说一下为什么!也可以讲讲在日常工作中工具的使用问题,小编会请专业的老师一一为大家解答的!
- ?
10款丨超好用的开源大数据分析工具
茕兮
展开
考虑到现有技术解决方案的复杂性与多样化,企业往往很难找到适合自己的大数据收集与分析工具。然而,混乱的时局之下已经有多种方案脱颖而出,证明其能够帮助大家切实完成大数据分析类工作。下面我们将整理出一份包含十款工具的清单,从而有效压缩选择范畴。
数据已经成为现代化企业中最为重要的宝贵资源。一切决策、策略或者方法都需要依托于对数据的分析方可实现。随着“大数据分析”逐步替代其上代版本,即“商务智能”,企业正面临着一个更加复杂、且商业情报规模更为庞大的新时代。
考虑到现有技术解决方案的复杂性与多样化,企业往往很难找到适合自己的大数据收集与分析工具。然而,混乱的时局之下已经有多种方案脱颖而出,证明其能够帮助大家切实完成大数据分析类工作。下面我们将整理出一份包含十款工具的清单,从而有效压缩选择范畴。
1. OpenRefine
这是一款高人气数据分析工具,适用于各类与分析相关的任务。这意味着即使大家拥有多川不同数据类型及名称,这款工具亦能够利用其强大的聚类算法完成条目分组。在聚类完成后,分析即可开始。
2.hadoop
大数据与Hadoop可谓密不可分。这套软件库兼框架能够利用简单的编程模型将大规模数据集分发于计算机集群当中。其尤为擅长处理大规模数据并使其可用于本地设备当中。作为Hadoop的开发方,Apache亦在不断强化这款工具以提升其实际效果。
3. Storm
同样来自Apache的Storm是另一款伟大的实时计算系统,能够极大强化无限数据流的处理效果。其亦可用于执行多种其它与大数据相关的任务,具体包括分布式RPC、持续处理、在线机器学习以及实时分析等等。使用Storm的另一大优势在于,其整合了大量其它技术,从而进一步降低大数据处理的复杂性。
4. Plotly
这是一款数据可视化工具,可兼容JavaScript、MATLAB、Python以及R等语言。Plotly甚至能够帮助不具备代码编写技能或者时间的用户完成动态可视化处理。这款工具常由新一代数据科学家使用,因为其属于一款业务开发平台且能够快速完成大规模数据的理解与分析。
5. Rapidminer
作为另一款大数据处理必要工具,Rapidminer属于一套开源数据科学平台,且通过可视化编程机制发挥作用。其功能包括对模型进行修改、分析与创建,且能够快速将结果整合至业务流程当中。Rapidminer目前备受瞩目,且已经成为众多知名数据科学家心目中的可靠工具。
6. Cassandra
Apache Cassandra 是另一款值得关注的工具,因为其能够有效且高效地对大规模数据加以管理。它属于一套可扩展NoSQL数据库,能够监控多座数据中心内的数据并已经在Netflix及eBay等知名企业当中效力。
7. Hadoop MapReduce
这是一套软件框架,允许用户利用其编写出以可靠方式并发处理大规模数据的应用。MapReduce应用主要负责完成两项任务,即映射与规约,并由此提供多种数据处理结果。这款工具最初由谷歌公司开发完成。
8. Bokeh
这套可视化框架的主要目标在于提供精致且简洁的图形处理结果,用以强化大规模数据流的交互能力。其专门供Python语言使用。
9. Wolfram Alpha
这是一套搜索引擎,旨在帮助用户搜索其需要的计算素材或者其它内容。举例来说,如果大家输入“Facebook”,即可获得与Facebook相关的HTML元素结构、输入解释、Web托管信息、网络统计、子域、Alexa预估以及网页信息等大量内容。
10. Neo4j
其官方网站将这款工具称为图形数据库技术的下一场革命。这种说法在一定程度上并不夸张,因为此套数据库使用数据间的关系以操作并强化性能表现。Neo4j目前已经由众多企业用于利用数据关系实现智能应用,从而帮助自身保持市场竞争优势。
End.
如果对软件测试感兴趣,想了解更多的软件测试知识,请大家关注“51Testing软件测试网”百家号。
- ?
为什么R语言是学习数据分析的第一选择
弗利特伍德
展开
刚开始学习数据科学的人都会面对同一个问题:
不知道该先学习哪种编程语言。
事实是,你的时间有限。学习一门新的编程语言相当于一项巨大的投资,因此在选择语言时需要有战略性。
我给你的建议就是:先学习R语言
我建议你将R语言作为你的第一个“数据科学编程语言”。虽然也有例外,比如特定的项目需要。
因为R语言正在成为数据科学的“通用语言”
这并不是说R语言是唯一的语言,也不是说它是每个工作的最佳工具。然而,它是使用最广泛的,而且越来越受欢迎。
O' reilly media在过去几年中进行了一系列数据科学调查,分析了数据科学趋势。在2016年的调查报告中,R语言是最常用的编程语言(如果排除SQL的话,在本文中它不能称为编程语言)。57%的调查人群使用R语言(使用Python的比例为54%)。
另一个常见的语言排名系统是Redmonk编程语言排名,它由GitHub(代码行)和Stack Overflow(标签数)的流行指数派生而来。截至2016年11月,R语言在所有编程语言中排名第13。此外,R语言多年来一直呈持续上升趋势:
此外还有TIOBE指数(按搜索引擎搜索次数对编程语言进行排名)。在TIOBE指数上,R语言十年来呈现出稳定上升趋势。
使用R语言的公司
在招聘数据科学家的几家顶级公司中,R语言使用程度非常高。在我认为现代经济中最优秀的两家公司——Google和Facebook 都有使用R语言数据科学家。
除了像Google,Facebook和微软这样的科技巨头,R语言在美国银行,福特,TechCrunch,Uber和Trulia等众多公司都有广泛的应用。
R语言在学术界很受欢迎
R语言不仅仅是一个行业工具。它在学术科学家和研究人员中也非常受欢迎,最近著名《自然》杂志上发表的R语言概况也证实了这一点。
R语言在学术界的备受欢迎,因为它创造了供应行业的人才库。
换句话说,如果最优秀、最聪明的人群在大学学习了R语言,这将加大R语言在行业中的重要性。当学者、博士和研究人员离开学术界从事商业活动时,他们又将产生对R语言人才的需求。
此外,随着数据科学的成熟,商业届的数据科学家将需要与学术届的科学家进行更多的沟通。我们需要借鉴技术和交流观点。随着世界转变为数据流时,学术科学与面向商业的数据科学之间的界线会变得模糊。
通过R语言学习“数据科学的技能”是最简单的
然而,R语言的普及性并不是学习R语言的唯一原因。
在选择语言时,你需要一种在这些领域都具有重要功能的语言。同时你需要执行这些任务的工具,以及在你所选语言中来学习这些技能的资源。
如上所述,你更多地需要关注流程和技术,而不是语法。
你需要学习如何解决问题。
你需要学习如何在数据中找到真知灼见。
为此,你需要掌握数据科学的3个核心技能领域:数据处理,数据可视化和机器学习。在R语言中掌握这些技能将比任何其他语言都容易。
数据处理
一般来说,数据科学中80%的工作都是数据处理。通常情况下,你需要花费大量时间来整理你的数据。R语言中有一些很棒的数据管理工具。
R语言中的dplyr包使数据处理变得容易,这可以大大简化数据处理的工作流程。
数据可视化
ggplot2是最佳的数据可视化工具之一。ggplot2的好处是,在学习语法的同时,还学习如何思考数据可视化。
所有的统计可视化都有很深层的结构。存在构建数据可视化的高度结构化框架,ggplot2基于该框架。
此外,当将ggplot2和dplyr组合在一起时,从数据中得出相关见解几乎毫不费力。
机器学习
最后,还有机器学习。虽然我认为大多数数据科学初学者不应该急于学习机器学习(首先掌握数据探索更为重要),机器学习是一项重要的技能。当数据探索不再带来洞察力时,你则需要更强大的工具。
如果你是初学者,R语言是很好的选择。同时需要专注于学习数据科学的技能。
在学习过程中,你可能会看到很多新技术和新工具,或者一些令人眼花缭乱的数据可视化。
看到其他人的成果(并发现他们正在使用不同的工具)可能会导致你想尝试其他的东西。相信我:你需要集中注意力。你需要花上几个月(或更长时间)才能真正投入到一个工具中。
如上所述,如果你确实希望在数据科学工作流程中提高技能。至少在数据可视化和数据处理方面,你得具备扎实的技能。
- ?
用R语言做数据分析——相关图
皮子骞
展开
相关系数矩阵是多元统计分析的一个基本方面。哪些被考察的变量与其他变量的相关性很强,哪些并不强?相关变量是否以某种特定的方式聚集在一起?随着变量数的增加,这类问题将变得难以回答。相关图作为一种相对现代的方法,可通过对相关系数矩阵的可视化来回答这些问题。
相关图非常容易解释,以mtcars数据框中的变量相关性为例,它含有11个变量,对每个变量都测量了32辆汽车。利用下面的代码,我们就可以获得该数据的相关系数:
> options(digits = 2)
>cor(mtcars)
mpg cyl disp hp drat wt qsec vs am gear carb
mpg 1.00 -0.85 -0.85 -0.78 0.681 -0.87 0.419 0.66 0.600 0.48 -0.551
cyl -0.85 1.00 0.90 0.83 -0.700 0.78 -0.591 -0.81 -0.523 -0.49 0.527
disp -0.85 0.90 1.00 0.79 -0.710 0.89 -0.434 -0.71 -0.591 -0.56 0.395
hp -0.78 0.83 0.79 1.00 -0.449 0.66 -0.708 -0.72 -0.243 -0.13 0.750
drat 0.68 -0.70 -0.71 -0.45 1.000 -0.71 0.091 0.44 0.713 0.70 -0.091
wt -0.87 0.78 0.89 0.66 -0.712 1.00 -0.175 -0.55 -0.692 -0.58 0.428
qsec 0.42 -0.59 -0.43 -0.71 0.091 -0.17 1.000 0.74 -0.230 -0.21 -0.656
vs 0.66 -0.81 -0.71 -0.72 0.440 -0.55 0.745 1.00 0.168 0.21 -0.570
am 0.60 -0.52 -0.59 -0.24 0.713 -0.69 -0.230 0.17 1.000 0.79 0.058
gear 0.48 -0.49 -0.56 -0.13 0.700 -0.58 -0.213 0.21 0.794 1.00 0.274
carb -0.55 0.53 0.39 0.75 -0.091 0.43 -0.656 -0.57 0.058 0.27 1.000
哪些变量相关性最强?哪些变量相对独立?是否存在某种聚集模式?如果不花点时间和精力,单利用这个相关系数矩阵来回答这些问题是比较问题的。
利用corrgram包中的corrgram()函数,我们可以以图形的方式展示该相关系数矩阵,代码为:
>library(corrgram)
>corrgram(mtcars,order=TRUE,lower.panel=panel.shade,
+ upper.panel=panel.pie, text.panel=panel.txt,
+ main="Correlogram of mtcars intercorrelations")
我们先从主对角线下方的单元格开始解释这幅图形。默认地,蓝色和从左下指向右上的斜杠表示单元格中的两个变量呈正相关。反过来,红色和从左上指向右下的斜杠表示变量呈负相关。色彩越深,饱和度越高,说明变量相关性越大。相关性接近于0的单元格基本无色。
从图中含阴影的单元格中可以看到,gear、am、drat和mpg呈相互间呈正相关,wt、disp、hp和carb相互间也呈正相关。但第一组变量与第二组变量呈负相关。我们还可以看到carb和am、vs和gear、vs和am以及drat和qsec四组变量间的相关性很弱。
上三角单元格用饼图展示了相同的信息。颜色的功能同上,但相关性大小由被填充的饼图块的大小来展示。正相关性将从12点钟方向开始顺时钟填充饼图,而负相关性则逆时钟方向填充饼图。corrgram函数的格式如下:
corrgram(x, order=, panel=, text.panel=, diag.panel=)
其中,x是一行一个观测的数据框。当order=TRUE时,相关矩阵将使用主成分分析法对变来那个重排序,这将使得二元变量的关系模式更为明显。选项panel设定非对角线面板使用的元素类型。我们可以通过选项lower.panel和upper.panel来分别设置主对角线上方和上方的元素类型。而text.panel和diag.panel选项控制着主对角线元素类型。可用的panel值如下图所示:
我们进行第二段代码:
>options(digits = 2)
>library(corrgram)
>corrgram(mtcars,order=TRUE,lower.panel=panel.ellipse,
+ upper.panel=panel.pts, text.panel=panel.txt,
+ diag.panel = panel.minmax,
+ main="Correlogram of mtcars data scatter plots and ellipses")
这幅图中,下三角区域包含平滑拟合曲线和置信椭圆,上三角区域包含散点图。主对角面板包含变量最小值和最大值。矩阵的行和列利用主成分分析法进行了重排序。
我们还可以使用colorRampPallette()函数自主控制corrgram()函数中使用的颜色,演示代码如下:
library(corrgram)
col.corrgram<- function(ncol){
colorRampPalette(c("darkgoldenrod4","burlywood1","darkkhaki","darkgreen"))(ncol)
}
corrgram(mtcars,order=TRUE,lower.panel=panel.shade,
upper.panel=NULL, text.panel=panel.txt,
main="Correlogram of mtcars intercorrelations")
- ?
R学习笔记系列—R语言与数据分析之数据时代篇
Ibiza
展开
引言 R语言与数据时代
0.1 数据时代
我们已经进入了全新的数据时代,大数据、云计算、物联网、机器学习、人工智能等等一系列技术纷至沓来,数据的管理和应用已经渗透到每一个行业和业务领域,成为当今以及未来商业运作的基础资产。对于海量数据的挖掘预示着新一轮生产率增长和消费者盈余浪潮的到来,数据将成为决策的关键因素。可以说,只有掌握数据并善于运用数据的人,才会在竞争日益激烈的环境中寻得先机。
对于数据时代,已经很多学者商业领袖做了深刻的阐述。
未来简史作者:“数据将取代土地成为最重要的资源”。
阿里巴巴董事局主席马云:“我们认为,数据将在未来变得对人们的生活非常重要。明天,一切事物都将通过物联网与网络相连”。
谷歌母公司Alphabet的执行董事长埃里克-施密特:“我认为,对数据分析的基本理解对下一代年轻人来说非常重要,这就是你们要进入的世界”。
哈佛商业评论:“数据科学家是二十一世纪最性感的工作”。
......
所有这些,都强调了数据的极端重要性。所以,如果你对数据分析的世界感兴趣,那么不要再犹豫,立即行动起来,为自赢得未来。
0.2 数据分析师的分类
数据科学是一个内涵十分丰富的科学,数据分析领域包含着许多问题,因而数据科学家也有很多不同的分工。如果从工作的性质来看,大致有四类。
数据工程师:更多地关注数据分析的软硬件基础设施,比如数据仓库、海量数据分布式处理框架、数据集成等,能够熟练编写管理和操作数据的代码,一般是具有IT背景的工程师。
数据科学家:通常来自学术界,具有扎实的数学、统计学背景和极强的知识扩展能力,在新算法的研究,以及一些开创新的工作中至关重要,是整个数据科学发展的重要驱动力。
数据分析师: 有较为深厚的统计学背景,同时也熟练掌握大数据、机器学习以及编程,能够为指定的任务制定科学的数据分析方案,从大量的数据中挖掘出有价值的信息,为决策提供支撑。
数据营销师:营销推广数据分析产品和服务的人,一般来说本身就具备丰富的数据从业经历,擅长于专业人士打交道,并将数据分析方案转化为现实收入。
当然,以上分类只是一个参考,并不绝对。本系列教程的目的是通过循序渐进的学习,让读者熟练掌握成为一名数据分师所需要的知识和技能。如果你励志成为一名具备深厚IT技能的数据工程师、或者理论背景深厚的前沿算法研究者,那么本书并不适合你。
0.3 数据分析师应该具备的特质
要在任何一个领域取得成功,变得卓越,都必须具备一些基本的特质或者品格,否则就算勉强从事这个行业,也很难从平庸变得卓越。当然,需要具备什么样的素质,不同的人有不同的看法,并没有一个标准答案。但有一些特质是共同的。
首先,足够热爱。想要探究数据背后的规律,想要了解事物之间的关联,想要预测事物未来的发展轨迹。只有这样,你才能怡然自得心情愉悦地工作,在普通人感到枯燥无趣的一大堆数据中找到乐趣,而乐趣或者兴趣所带来的愉悦感是做好任何事情的基本前提和根本动力。正如那句话所说:“世界上所有的坚持,都源自内心真正的热爱”。
其次,坚韧不拔。数据分析的世界广袤辽阔,需要掌握很多的知识和技能,需要付出大量的精力学习和掌握,在这个过程中,可能常常感到沮丧、失望、难以坚持。那么,当你心情低落时,请不要放弃,回想最初要成为数据分析师的初衷,继续前行。正所谓不忘初心、方得始终,坚持会让你体会到类似禅宗“顿悟”,以及诗词中“柳暗花明又一村”、“众里寻她千百度,蓦然回首,那人却在,灯火阑珊处”的人生体验。
第三,保持专注。数据分析的知识和技能是通用的,但应用的领域是具体的。除非你立志成为一名数据科学家,研究基础理论,否则建议专注于具体的领域,成为行业专家,不要经常变换自己的研究领域。之所以这样,是因为人的精力是有限的,只有长时间专注某一领域,才能在该行业价值链中占据高位,成为高端工作者,获得远超一般人员的超额回报。当然,扎实的基础知识是必备的,在需要的时候,你也能够比较自如的切换到另一行业。
第四,混合思维。数据分析必须具备两种可能有一定冲突的思维方式,一是数学的思维方式,习惯用数学的、逻辑的方式观察、描述和思考事物,;另一种是直觉的、艺术的思维。我们对世界的认识是不完备的,有些现象和关联很难用数学直观的表述出来。目前很热的深度学习,其实也只能做出在一定领域适用的弱人工智能,局限性非常大,且很容易被欺骗。很多时候,数据分析的结果取决于算法的选择和优化,取决于数据分析师的经验和直觉,而这种直觉和经验,或者说复杂度到一定程度后必须引入的宏观思维,更类似一种艺术。
0.4 本书的学习路径
作者看过很多介绍大数据分析、数据挖掘、机器学习的书籍或者文章,很多都强调了大数据分析与传统统计学的区别,比如不再突出小样本下的推断问题,不再追求因果关系而是承认混杂性,不再追求精确性而是过程黑箱化等等。因此,在学习方法上,这些书籍都直接从数据挖掘、机器学习的各种算法开始,告诉大家怎么打开软件,输入哪个函数,调整哪些参数,然后会输出什么结果,做出某个结论。看多了这样速成的教材,你初期会很有成就感,因为觉得数据分析不过如此,很快就掌握了相关技能。但是,随着应用的逐渐深入你会发现,好像除了知道那几个算法怎么调用,你很难对数据的性质有更加深入和直观的认识,或者离开了样例数据库,就很难得出有效的结论,做出有用的决策。
作者始终认为,要想精通任何一门技术或者学问,成为行业专家,都需要从最基础的知识开始,反复学习和练习,别无捷径。具体到数据分析领域,作者认为数据科学家不过是统计学家的一个比较时髦的叫法,所有的数据技术,包括炙手可热的机器学习,都是统计学和计算机科学交叉发展的结果,扎实的数学和统计学基础永远是数据分析师必须具备h和熟练掌握的知识。可以说,关于数据的学问,全部的基础都源于数学和统计学,数学和统计学对于数据性质的研究、对于误差行为的假定和分析、对于数据质量的判断、对于模型建立的指导原则等等,是一切数据分析的基础。只有通过循序渐进的学习,逐步熟练掌握数学和统计学基本原理和技能,才能在数据分析领域走的更远。
本系列教程首先从统计学基础知识开始学习,然后逐步过度到各种数据挖掘算法,再到机器学习和深度学习,中间会穿插介绍各种背景知识,包括一些数学知识和编程思想,最大程度地让读者夯实基础、拓宽视野,熟练掌握数据分析师所需具备的各种知识。
- ?
数据分析Excel、SAS、R、SPSS、Python这5大软件优势
Dianthe
展开
工欲善其事,必先利其器。说起来道理大家都懂,只是到了要学习的时候就开始各种退缩。殊不知一款好的数据分析工具可以让你事半功倍,瞬间提高学习工作效率。
虽然数据分析的工具千万种,综合起来万变不离其宗。无非是数据获取、数据存储、数据管理、数据计算、数据分析、数据展示等几个方面。而SAS、R、SPSS、python、excel是被提到频率最高的数据分析工具。那么,这些工具本身到底有什么特点呢?
Excel
Excel 是微软办公套装软件的一个重要的组成部分,它可以进行各种数据的处理、统计分析和辅助决策操作,广泛地应用于管理、统计财经、金融等众多领域。
1、数据透视功能
一个数据透视表演变出10几种报表,只需吹灰之力。一个新手,只要认真使用向导1-2小时就可以马马虎虎上路。
2、统计分析
其实包含在数据透视功能之中,但是非常独特,常用的检验方式一键搞定。
3、图表功能
这几乎是Excel的独门武工,其他程序望其项背而自杀。
4、高级筛选
这是Excel提供的高级查询功能,而操作之简单。非常超值享受。
5、自动汇总功能
这个功能其他程序都有,但是Excel简便灵活。
6、高级数学计算
只要一两个函数轻松搞定
SAS软件
SAS是全球最大的软件公司之一,是由美国NORTH CAROLINA州立大学1966年开发的统计分析软件。SAS把数据存取、管理、分析和展现有机地融为一体。
主要优点如下:
1、功能强大,统计方法齐,全,新
SAS提供了从基本统计数的计算到各种试验设计的方差分析,相关回归分析以及多变数分析的多种统计分析过程,几乎囊括了所有最新分析方法,其分析技术先进,可靠。分析方法的实现通过过程调用完成。许多过程同时提供了多种算法和选项。
2、使用简便,操作灵活
SAS以一个通用的数据(DATA)步产生数据集,尔后以不同的过程调用完成各种数据分析。
其编程语句简洁,短小,通常只需很小的几句语句即可完成一些复杂的运算,得到满意的结果。结果输出以简明的英文给出提示,统计术语规范易懂,具有初步英语和统计基础即可。使用者只要告诉SAS“做什么”,而不必告诉其“怎么做”。
同时SAS的设计,使得任何SAS能够“猜”出的东西用户都不必告诉它(即无需设定),并且能自动修正一些小的错误(例如将DATA语句的DATA拼写成DATE,SAS将假设为DATA继续运行,仅在LOG中给出注释说明)。对运行时的错误它尽可能地给出错误原因及改正方法。因而SAS将统计的科学,严谨和准确与便于使用者有机地结合起来,极大地方便了使用者。
3、提供联机帮助功能
使用过程中按下功能键F1,可随时获得帮助信息,得到简明的操作指导。
R软件
R是一套完整的数据处理、计算和制图软件系统。
主要优点如下:
数据存储和处理系统数组运算工具(其向量、矩阵运算方面功能尤其强大)完整连贯的统计分析工具优秀的统计制图功能简便而强大的编程语言:可操纵数据的输入和输出,可实现分支、循环,用户可自定义功能
与其说R是一种统计软件,还不如说R是一种数学计算的环境,因为R并不是仅仅提供若干统计程序、使用者只需指定数据库和若干参数便可进行一个统计分析。
R的思想是:它可以提供一些集成的统计工具,但更大量的是它提供各种数学计算、统计计算的函数,从而使使用者能灵活机动的进行数据分析,甚至创造出符合需要的新的统计计算方法。
该语言的语法表面上类似 C,但在语义上是函数设计语言的(functional programming language)的变种并且和Lisp 以及APL有很强的兼容性。特别的是,它允许在“语言上计算”(computing on the language)。这使得它可以把表达式作为函数的输入参数,而这种做法对统计模拟和绘图非常有用。
R是一个免费的自由软件,它有UNIX、LINUX、MacOS和WINDOWS版本,都是可以免费下载和使用的。在R主页那儿可以下载到R的安装程序、各种外挂程序和文档。在R的安装程序中只包含了8个基础模块,其他外在模块可以通过CRAN获得。
SPSS
SPSS是世界上最早的统计分析软件。
主要优点如下:
操作简便:界面非常友好,除了数据录入及部分命令程序等少数输入工作需要键盘键入外,大多数操作可通过鼠标拖曳、点击“菜单”、“按钮”和“对话框”来完成。
编程方便:具有第四代语言的特点,告诉系统要做什么,无需告诉怎样做。只要了解统计分析的原理,无需通晓统计方法的各种算法,即可得到需要的统计分析结果。对于常见的统计方法,SPSS的命令语句、子命令及选择项的选择绝大部分由“对话框”的操作完成。因此,用户无需花大量时间记忆大量的命令、过程、选择项。
功能强大:具有完整的数据输入、编辑、统计分析、报表、图形制作等功能。自带11种类型136个函数。SPSS提供了从简单的统计描述到复杂的多因素统计分析方法,比如数据的探索性分析、统计描述、列联表分析、二维相关、秩相关、偏相关、方差分析、非参数检验、多元回归、生存分析、协方差分析、判别分析、因子分析、聚类分析、非线性回归、Logistic回归等。
数据接口:能够读取及输出多种格式的文件。比如由dBASE、FoxBASE、FoxPRO产生的*.dbf文件,文本编辑器软件生成的ASCⅡ数据文件,Excel的*.xls文件等均可转换成可供分析的SPSS数据文件。能够把SPSS的图形转换为7种图形文件。结果可保存为*.txt及html格式的文件。
模块组合:SPSS for Windows软件分为若干功能模块。用户可以根据自己的分析需要和计算机的实际配置情况灵活选择。
针对性强:SPSS针对初学者、熟练者及精通者都比较适用。并且很多群体只需要掌握简单的操作分析,大多青睐于SPSS。
Python
Python是一种面向对象、解释型计算机程序设计语言。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。
常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。
主要优点如下:
简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。
易学:Python极其容易上手,因为Python有极其简单的说明文档 。
速度快:Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。
免费、开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。
高层语言:用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
可移植性:由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。
解释性:一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。运行程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。
在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。这使得使用Python更加简单。也使得Python程序更加易于移植。
面向对象:Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。
可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以部分程序用C或C++编写,然后在Python程序中使用它们。
可嵌入性:可以把Python嵌入C/C++程序,从而向程序用户提供脚本功能。
丰富的库:Python标准库确实很庞大。它可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。
规范的代码:Python采用强制缩进的方式使得代码具有较好可读性。而Python语言写的程序不需要编译成二进制代码。
工具不是万能的,业务和数据建模方法才是万法之源。不要被工具迷花了眼哦!
- ?
数据分析都用什么工具
乐虫虫
展开
欢迎关注天善智能,我们是专注于商业智能BI,大数据,数据分析领域的垂直社区,学习,问答、求职一站式搞定!
本文是上一篇文章《全国及重点城市“数据分析”岗位需求量及工资水平分析》的续篇,从“数据分析”职位招聘单位给出的职位描述中分析各种工具的热门程度。
1.整体概览
经常看见有网友争论R和python谁才是主流的数据分析工具,网友们分门别派各抒己见。今天我们从实际需求出发,在招聘单位的职位描述中用正则表达式匹配统计常用的数据分析工具出现的频率,看看谁才是你最应该掌握的工具。
话不多说,先上图
毫无疑问,excel才是最主流的数据分析工具,在招聘单位的职位描述中出现频率远远高于其他工具(实际上居第八位的office也含有excel,其真实数据应该比这还高),作为最基础的工具,excel是一个数据分析工作者的必备技能。excel之后的4门工具分别是sqlsever、spss、sas和r,其中排名第二位的sqlsever频率高出另外两门主流数据库语言mysql、oracle近两倍,spss作为无需编程的专业统计软件也在职位描述中有较高的频率,sas则是编程类统计软件的代表,今年来火热的r语言也水涨船高,另一门火热的程序语言python在数据分析方面则要稍稍落后。
2.各职位具体情况
数据分析也有细分很多具体职位,那么不同的职位以上各种工具的要求是否存在差异呢?
表中数据显示“大数据分析师”需掌握的工具主要是r、python、hadoop、spark和java;“数据分析工程师”需要掌握的工具主要是sqlsever、r、python和hadoop,这两个职位都很看重编程开发能力。
“数据分析经理”、“高级数据分析师”和“数据分析师”需要掌握的工具大体一致,均为excel、sqlsever、spss、sas和r。
“数据分析主管”、“数据分析”、“数据分析专员”和“数据分析员”等职位对基础技能的要求更为突出,excel、ppt、word等office办公软件出现的频率较其他工具明显更高。
作为一名数据分析从业者或者想转行过来的人来说,要想有好的职业发展,首先,必须熟练掌握office办公软件,尤其是excel(不要瞧不起excel,你不一定玩得转);其次,还需要学习一门数据库语言,sqlsever是不错的选择(mysql、oracle与sqlsever较为类似,通一门后,其他的学起来也很容易);专业的统计分析工具也需要掌握一门,如果讨厌编程,可以选择spss,如果有编程能力那么sas和r可以选择一个学习,如果你精通python也可以用python做统计分析;如果想往大数据方向发展,或者是做数据分析工程师那就还需要掌握python、hadoop等工具。
最后附上一张数据分析职位描述的词云图,可以看出招聘单位除了看重工具的使用外,也很注重分析、业务、经验、沟通、团队等方面的能力。
本文作者:Mr.Hu,转自:一胡诌先生
- ?
为什么做数据分析首选R语言?
Daniel
展开
数据时代已经到来,但数据分析、数据挖掘人才却十分短缺,据全球顶尖管理咨询公司麦肯锡(McKinsey)一份详细分析报告显示:
预计到 2018 年,大数据或者数据工作者的岗位需求将激增,其中大数据科学家的缺口在 14 万到 19 万之间,对于懂得如何利用大数据做决策的分析师和经理的岗位缺口则将达到 150 万!
先来了解一下数据分析,就是以商业目的为驱动,所开展的获取数据、处理数据、分析数据、展示数据和撰写数据结构报告的一系列科学过程。
上海数据分析网针对这个过程,R 都有相应的方法可以较好地处理和完成数据分析所涉及到的内容。R 是一种免费的、开源的语言和操作环境,其初衷是为了统计计算和画图,但是 R语言现在能够做的事情已经远远地超出了其初衷,可以在诸多领域进行应用,比如,数据挖掘、机器学习、社交网络、生物信息、金融数据分析等。同时,R 提供了成千上万的专业模块和实用工具,是从大数据中获取有用信息的绝佳工具。
许多研究院,公司和大学已经使用 R。在过去几年,许多包括 R 的参考和应用 R 函数进行计算的图书相继出版。在 2015 年就被 IEEE 列入 2015 年十大语言,近几年也依然占据数据分析主流语言的绝对地位,所以,学习R语言是一项明智的职业投资。
R语言的强大功能
R是一套完整的数据处理、计算和制图软件系统。
其功能包括:数据存储和处理系统;数组运算工具(其向量、矩阵运算方面功能尤其强大);完整连贯的统计分析工具;优秀的统计制图功能;
简便而强大的编程语言:可操纵数据的输入和输出,可实现分支、循环,用户可自定义功能。R 语言配有专业的图形交互界面,对没有编程基础的用户也非常友好, R 语言上手入门极快,是学习数据分析、数据挖掘的最佳编程语言。
上海数据分析网现在上海数据分析网联合哈步数据首席数据科学家、跟随R发明者之一Ross Ihaka进行R语言二次开发的高老师,推出了机器学习与数据挖掘—R语言实战课程,3月17日开课!
【课程信息】
授课方式:面授直播两种形式,中文多媒体互动式授课方式
授课时间:
2018年3月17-18日
9:00-12:00,13:00-16:00
学习期限:线上(视频/直播)与线下相结合,长期学习。
微信群、QQ群练习答疑。
滚动开班,一次报名,可以申请免费回来听课。
课件资料:课程内部资料,人手一份,上课现场发放
CPDA和CDA学员优惠
更多团报优惠请咨询相关老师
【教师简介】
高杨,哈步数据首席数据科学家,跟随R发明者之一Ross Ihaka进行R语言二次开发,十几年的数据分析师从业经验。精通SAS、R等数据分析软件,主导过多个大数据项目。精通R语言,小班教学。
- ?
用R语言做数据分析——R的四种图形系统
朔风
展开
我们学习了各种各样的图形,它们大部分都是利用R语言的基础图形系统创建的。在R语言中,除了基础图形系统之外,R语言还提供了grid、lattice和ggplot2这三种图形系统,它们克服了R基础图形系统的低效性,大大扩展了的R语言的绘图能力。
grid图形系统可以很轻松地控制图形基础单元,给予编程者创作图形极大的灵活性。lattice包通过一维、二维或三维条件绘图来对多元变量关系进行直观展示。ggplot2包则基于一种全面的图形语法,提供了一种全新的图形创建方式。因为grid没有提供生成统计图形以及完整绘图的函数,因此数据分析师很少直接采用grid包来分析数据。这里重点介绍lattice和ggplot2图形系统。
四种图形系统的载入方式有所不同,基础图形函数可以自动调用,grid和lattice函数的调用必须要加载相应的包(library(lattice)),要调用ggplot2函数需要下载并安装该包(install.packages("ggplot2")),第一次使用还要引入加载该包(library(ggplot2))。
lattice包为单变量和多变量数据的可视化提供了一个全面的图形系统,它可以轻松生成栅栏图形。
在一个或多个其他变量的条件下,栅栏图形展示某个变量的分布或与其他变量间的关系。lattice包中singer数据集包含了合唱成员的身高和声部数据,让我们考虑以下问题:纽约合唱团歌手的身高随着他们所属的声部如何变化?来看以下代码:
>library(lattice)
> histogram(~height|voice.part, data=singer,main="Distribution of Heights by Voice Pitch", xlab="Height (inches)")
height是因变量,voice.part被称作条件变量,这段代码对八个声部的每一个都创建了一个直方图。图形显示了男高音和男低音比女低音和女高音身高要高。
在栅栏图形中,单个面板要依据条件变量的各个水平来创建。如果指定了多个条件变量,那么一个面板将按照各个因子水平的组合来创建。然后面板将被排成一个阵列以进行比较。每个面板在一个区域都会有一个标签,这里的区域称作条带区域。随后我们可以看到,用户可对每个面板中展示的图形、条带的格式和位置、面板的摆放、图例的内容和位置以及其他许多图形特征进行控制。
lattice包提供了丰富的函数,可生成单变量图形(点图、核密度图、直方图、柱状图和箱线图)、双变量图形(散点图、带状图和平行箱线图)和多变量图形(三维图和散点图矩阵)。
各种高级绘图函数都服从以下格式:
graph_function(formula, data=, options)
graph_function为图形类型函数;
formula指定要展示的变量和条件变量;
data指定一个数据框;
options是逗号分隔函数,用来修改图形的内容、摆放方式和标准。
lattice包中常见的图形类型函数如下:
lattice包中图形函数常见的配置选项如下:
设小写字母代表数值型变量,大写字母代表类别型变量(因子)。在高级绘图函数中,表达式形式通常为:
y ~ x | A * B
在竖线左边的变量称为主要变量,右边的变量称为条件变量。主要变量将变量映射到每个面板的坐标轴上,此处,y ~ x表示变量分别映射到纵轴和横轴上。对于单变量绘图,用~x代替y ~ x即可;对于三维图形,用z ~ x*y代替y ~ x,而对于多变量绘图(散点图矩阵或平行坐标图)用一个数据框代替y ~ x即可。注意,条件变量总是可以自行挑选的。
根据上述逻辑, ~ x | A即展示因子A各个水平下水平下数值型变量x的分布情况; y ~ x | A*B即展示因子A和B各个水平下组合下数值型变量x和y间的关系。而A ~ x则表示类别型变量A在纵轴上,数值型变量x在横轴上进行展示。 ~ x表示仅展示数值型变量x。
下面以数据框mtcar为例,我们使用以下代码进行lattice图形的绘制:
library(lattice)
attach(mtcars)
gear<- factor(gear, levels = c(3,4,5),labels = c("3 gears", "4 gears", "5 gears"))
cyl<- factor(cyl, levels = c(4,6,8), labels = c("4 cylinders","6 cylinders","8 cylinders"))
densityplot(~mpg,main="Density Plot", xlab = "Miles per Gallon")
densityplot(~mpg | cyl,main="Density Plot", xlab = "Miles per Gallon")
xyplot(mpg ~ wt | cyl * gear, main="Scatter Plots by Cylinders and Gears",xlab = "Car Weight",ylab = "Miles per Gallon")
cloud(mpg~wt*qsec | cyl, main="3D Scatter Plots by Cylinders")
dotplot(cyl ~ mpg | gear, main="Dot Plots by Number of Gears and Cylinders", xlab="Miles Per Gallon")
splom(mtcars[c(1,3,4,5,6)], main="Scatter Plot Matrix for mtcars Data")
detach(mtcars)
我们可以存储和操作lattice包中的高级绘图函数生成的图形。来看下列代码:
mygraph<- densityplot(~height | voice.part, data=singer)
plot(mygraph)
它创建了一个栅栏密度图,并存储在mygraph对象中。但是此时不会展示任何图形,只有调用plot(mygraph)或(mygraph)时才会展示图形。
我们可以通过options轻松地修改lattice图形对象,另外还可以使用update()函数来修改lattice对象,例如:
update(mygraph, col="red", pch=16, cex=.8, jitter=.05, lwd=2)
数据分析软件r是什么
-
1、只需3秒快速实现求和
-
2、如何快速填充序号
-
3、如何自动填充序号(公式法)
-
4、数据条的神奇应用
-
5、多文本快速合并
-
6、查找与替换的不同玩法
-
7、快速定位到指定区域
-
8、数据排序、工资条制作
-
9、快速筛选(模糊、精确筛选)
-
10、快速插入空行
-
11、快速删除空行
-
12.快速跳转到天涯海角
-
13、.同时查看两个Excel文件
-
14、用条件格式扮靓报表
-
15、一键插入Excel图表
-
16、批量处理行高、列宽
-
17、利用拆分功能查看数据
-
18、批量录入相同内容
-
19、工作表快速跳转
-
20、批量录入表格模板(精品课程)
-
21、Excel函数与公式的应用、公式循环引用的查找
-
22、IF函数单条件判断同比增长
-
23、用sum函数 格式相同,连续多表数据汇总
-
24、excel快捷键
-
25、VLOOKUP函数——根据销售员匹配销售额
-
26、统计各部门销售总额
-
27、统计指定条件个数
-
28、怎样输入当前日期和时间、星期数
-
29、销售业绩排名
-
30、Sumproduct函数-万能函数(销售额汇总求和)
-
31、根据销售员,地区,商品名称汇总
-
32、批量替换PPT字体
-
33、给销售额数据批量添加万元单位
-
34、一秒快速核对两列数据
-
35、快速定位到指定单元格或区域
-
36、快速制作双行标题工资条
-
37、给你的表格做个瘦身
-
38、快速打开常用的Excel文件
-
39、快速打开多个Excel文件
-
40、利用创建组—快速隐藏/展开多列数据
-
41、快速制作下拉菜单
-
42、复制粘贴表格,如何保留数据源列宽格式一致?
-
43、两列数据位置互换
-
44、1秒钟扮靓报表——如何实现表格隔行换色
-
45、快速删除重复记录——保留唯一值
-
46、快速向下填充、向右填充,文本或公式
-
47、给Excel文件添加密码
-
48、插入带图片的批注
-
49、输入公式后不计算?
-
50、如何设置单元格缩进
-
51、快速解决Excel表格总显示货币格式
-
52、批量添加万元单位
-
53、你会四舍五入么?
-
54、用RAND函数机选彩票
-
55、冻结首行你会么?
-
56、超链接的高级应用
-
57、IFERROR函数-屏蔽错误值
-
58、批量填充颜色
-
59、录入数据
-
60、快速输入工号
-
61、快速行列转置
-
62、自定义缩放界面
-
63、多个单元格同时输入
-
64、如何计算立方米?
-
65、快速制作双行标题工资条
-
66、输入带方框的√和×
-
67、快速将姓名对齐
-
68、快速输入性别
-
69、按单位职务排序
-
70、自动计算合同到期日期
-
71、计算时间间隔
-
72、日期和时间的拆分
-
73、快速处理不规范的日期格式
-
74、快速填充合并单元格
-
75、效率加倍的快捷键
-
76、快速复制表格和对象
-
77、快速创建工作表副本
-
78、快速复制序列号
-
79、快速显示公式
-
80、多个单元格同时输入
-
81、快速调整显示比例
-
82、快速自动填充
-
83、快速填充(Ctrl+E)
-
84、Ctrl与数字键结合
-
85、快速将多列数据整理为1列
-
86、快速将1列数据拆分为多列
-
87、快速定位公式
-
88、快速录入数据
-
89、快速累计求和
-
90、身份证号码显示为0怎么办?
-
91、快速制作斜线表头
-
92、文本竖向显示
-
93、神奇的监视窗口
-
94、不一样的格式刷
-
95、快速美化图表
-
96、快速生成当前日期
-
97、快速找出循环引用
-
98、快速提取信息
-
99、二维表快速转换为一维表
-
100、快速多表合并