数据分析师要掌握哪些技能

Python015

数据分析师要掌握哪些技能,第1张

要熟练使用 Excel、至少熟悉并精通一种数据挖掘工具和语言、撰写报告的能力、要打好扎实的 SQL 基础。

1、要熟练使用 Excel

Excel 可以进行各种数据的处理、统计分析和辅助决策操作,作为常用的数据处理和展现工具,数据分析师除了要熟练将数据用 Excel 中的图表展现出来,还需要掌握为生成的图表做一系 列的格式设置的方法。

2、至少熟悉并精通一种数据挖掘工具和语言

以R语言为例,R编程语言在数据分析与机器学习领域已经成为一款重要的工具。R 作为脚本语言凭借其良好的互动性和丰富的扩展包资源可以方便地解决大部分数据处理、变换、统计分析、可视化的问题,并可以重现所有的细节。

3、撰写报告的能力

在撰写报告时,深入地思考,深入分析,逻辑严谨,结论有说服力,能提前预测数据趋 势,能从问题中引申出解决方案,提出有指导意义的分析建议,这些都是一名优秀的分析师所体现的特质。

4、要打好扎实的 SQL 基础

SQL 基础之所以重要,是因为数据分析师分析的数据大多都是从数据库中提取而来的。有良好的 SQL 功底并能熟悉使用,不仅能提取到需要的数据,还能大大提高工作效率。

注意:

1、与传统的数据分析师相比,互联网时代的数据分析师面临的不是数据匮乏,而是数据过剩。因此,互联网时代的数据分析师必须学会借助技术手段进行高效的数据处理。更为重要的是,互联网时代的数据分析师要不断在数据研究的方法论方面进行创新和突破。

2、就行业而言,数据分析师的价值与此类似。就新闻出版行业而言,无论在任何时代,媒体运营者能否准确、详细和及时地了解受众状况和变化趋势,都是媒体成败的关键。

新建具体的角色,根据需求定义相应的权限,即可  

对于访问控制需求(这里以SQL Server 2005自带的示例说明)有如下说明:假设Adventure Works Cycles将全球的销售按国家和地区分为不同的分公司(Australia分公司、Canada分公司、France分公司、Germany分公司、United Kingdom分公司、United States分公司),

总公司CEO可以看到每个分公司的销售情况,分公司的经理只能看到自己所在的分公司的销售情况。分析需求可以得知,实际上需要根据用户来决定用户访问的数据,可以利用SQL Server 2005 Analysis Service中定义角色的方式来控制。

定义角色可以在多维数据集开发环境中定义,也可以完成多维数集部署之后在数据库服务器端定义。

多维数据集角色是一类访问权限的集合,可以在角色中定义属于这个角色的用户能访问什么数据,不能访问什么数据。定义了角色之后,可以为这个角色添加成员,成员是服务器Windwos账户或者是域账户。当某个角色赋于某个成员之后,客户端使用该用户登陆的时候,只能看到角色中定义的权限访问多维数据集。如果在开发环境定义的角色必须先保存然后部署才能生效。

下面具体介绍设置方法(前台测试工具用普科(ProClarity)):

1、新建Windows测试账户“Jeffrey”。不要定义成Administrator组,因为Administrator组的用户自动拥有访问多维数集的权限。

2、打开Analysis Servie 项目工程,在角色列表项中单击右键新建角色,打开新建角色对框。

3、设置访问权限(如图1)。

图1

这里只需要读取数据,如果用户需要有要处理更新cube时,可以根据需要进行设置。

图2

5、设置多维数据集访问权限,选择“读”,本地钻取选择“钻取”(如图3) 

图三

图36、选择维度数据选项卡,选择维度中的“Customer”维度(如图4)。

图4

7、 假设为Australia分公司定义权限,角色定义了只能访问区域为Australia的数据(如图5),在高级选项卡可以写mdx进行成员的选择。在成员列列中选择“Australi”。

图5

8、 选择“成员身份”选项卡,单击“添加”,在弹出的对话框中输入“Jeffrey”(Windows用户),检查名称之后如图6所示。 

图6

9、完成上面的步骤之后,保存,部署就设置完成。

设置成功这后,客户端软件(Reporting Service,或ProClarity )以Jeffery用户连上多维数据集,就只能访问Australi的数据如图7。

图7

以Jeffery用户登陆,customer下的区域维度所有成员只有Australi,成功的限制Jeffery用户只能访问Australi数据

首先是基础篇

1、首先是Excel,貌似这个很简单,其实未必。Excel不仅能够做简单二维表、复杂嵌套表,能画折线图/Column chart/Bar chart/Area chart/饼图/雷达图/Combo char/散点图/Win Loss图等,而且能实现更高级的功能,包括透视表(类似于BI的多维分析模型Cube),以及Vlookup等复杂函数,处理100万条以内的数据没有大问题。最后,很多更高级的工具都有Excel插件,例如一些AI Machine Learning的开发工具。

2. SQL(数据库)

我们都知道数据分析师每天都会处理海量的数据,这些数据来源于数据库,那么怎么从数据库取数据?如何建立两表、三表之间的关系?怎么取到自己想要的特定的数据?等等这些数据选择问题就是你首要考虑的问题,而这些问题都是通过SQL解决的,所以SQL是数据分析的最基础的技能。

3. 统计学基础

数据分析的前提要对数据有感知,数据如何收集?数据整体分布是怎样的?如果有时间维度的话随着时间的变化是怎样的?数据的平均值是什么?数据的最大值最小值指什么?数据相关与回归、时间序列分析和预测等等。

4、掌握可视化工具,比如BI,如Cognos/Tableau/FineBI等,具体看企业用什么工具,像我之前用的是FineBI。这些工具做可视化非常方便,特别是分析报告能含这些图,一定会吸引高层领导的眼球,一目了然了解,洞察业务的本质。另外,作为专业的分析师,用多维分析模型Cube能够方便地自定义报表,效率大大提升。

进阶阶段需要掌握的:

1、系统的学好统计学

纯粹的机器学习讲究算法预测能力和实现,但是统计一直就强调“可解释性”。比如说,针对今天微博股票发行就上升20%,你把你的两个预测股票上涨还是下跌的model套在新浪的例子上,然后给你的上司看。统计学就是这样的作用。

数据挖掘相关的统计方法(多元Logistic回归分析、非线性回归分析、判别分析等)

定量方法(时间轴分析、概率模型、优化)

决策分析(多目的决策分析、决策树、影响图、敏感性分析)

树立竞争优势的分析(通过项目和成功案例学习基本的分析理念)

数据库入门(数据模型、数据库设计)

预测分析(时间轴分析、主成分分析、非参数回归、统计流程控制)

数据管理(ETL(Extract、Transform、Load)、数据治理、管理责任、元数据)

优化与启发(整数计划法、非线性计划法、局部探索法、超启发(模拟退火、遗传算法))

大数据分析(非结构化数据概念的学习、MapReduce技术、大数据分析方法)

数据挖掘(聚类(k-means法、分割法)、关联性规则、因子分析、存活时间分析)

其他,以下任选两门(社交网络、文本分析、Web分析、财务分析、服务业中的分析、能源、健康医疗、供应链管理、综合营销沟通中的概率模型)

风险分析与运营分析的计算机模拟

软件层面的分析学(组织层面的分析课题、IT与业务用户、变革管理、数据课题、结果的展现与传达方法)

2、掌握AI Machine Learning算法,会用工具(比如Python/R)进行建模。

传统的BI分析能回答过去发生了什么?现在正在发生什么?但对于未来会发生什么?必须靠算法。虽然像Tableau、FineBI等自助式BI已经内置了一部分分析模型,但是分析师想要更全面更深度的探索,需要像Python/R的数据挖掘工具。另外大数据之间隐藏的关系,靠传统工具人工分析是不可能做到的,这时候交由算法去实现,无疑会有更多的惊喜。

其中,面向统计分析的开源编程语言及其运行环境“R”备受瞩目。R的强项不仅在于其包含了丰富的统计分析库,而且具备将结果进行可视化的高品质图表生成功能,并可以通过简单的命令来运行。此外,它还具备称为CRAN(The Comprehensive R Archive Network)的包扩展机制,通过导入扩展包就可以使用标准状态下所不支持的函数和数据集。R语言虽然功能强大,但是学习曲线较为陡峭,个人建议从python入手,拥有丰富的statistical libraries,NumPy ,SciPy.org ,Python Data Analysis Library,matplotlib: python plotting。

以上我的回答希望对你有所帮助