数据分析常用工具

本文总结数据分析常用的软件,以及推荐相应的学习参考资料。

1. Excel

常用操作有函数、可视化、数据透视表、VBA。

函数

可视化

i.单元格

ii.静态图

iii.动态图

即带有控件(部分涉及VBA),可以选择数据并动态展示结果的图表,如果要用Excel来做业务数据的Dashboard,动态图是很好的解决方案。

注:黄成明老师的《数据化管理》中的部分内容涉及如何用Excel建立业务运营工具。

数据透视表

Ctrl+A-->Alt-->D-->P-->F ——透视表“一条龙”操作应该是目前用到最多的快捷键组合了。

数据透视表是快速数据分析的不二之选,主要操作为分组计算,当然利用“切片”工具来动态展示数据也是可以的(数据透视表也可以用来做动态仪表盘)。

VBA

如果不想让一个重复的枯燥的动作重复几百上千次,那么VBA编程是一个比较好的解决方案,编程的目的主要在于自动化和定制化,VBA编程相对简单易学(甚至有的岗位就是专门开发VBA模块的)。

荐书:

谁说菜鸟不会数据分析,张文霖;

点评:数据分析入门不错的书,小蚊子老师的博客上也有蛮多干货的;

Excel疑难千寻千解(套装);

点评:ExcelHome,ExcelTip两个论坛出的书质量都非常好,该套装基本是“行走江湖”必备,涉及函数、VBA、操作、数据透视表等;

Excel图表之道,刘万祥;

点评:最早是从博客上了解到刘老师(博客为“刘万祥ExcelPro”),那时才发现Excel也可以做出非常高大上的商务图;

左手数据,右手图表,徐军泰;

点评:该书主要讲动态图,也就是可以有交互操作的图表,第一份工作的时候参考此书做了一个半自动化的Excel监控模板,受益颇多;

别怕,Excel VBA其实很简单,Excel Home;

点评:结构清晰,行文有趣,有编程基础的话,很容易读懂。

2. SQL

数据一般可分为3类:

结构化数据,e.g.平时见到的类似Excel表格那样的数据;

半结构化数据,存在父子节点的数据,e.g. XML, HTML, json格式的数据;

非结构化数据,e.g. 文本、图片、音频、视频等;

数据分析“直接”使用的数据大多数都为结构化数据,这些数据通常都存在数据库里(SQLServer, Mysql, Oracle, Hive等),而要提取这些数据,SQL必不可少。

常见的SQL操作分为:

,即select语句,可以分为select, from, where, group by 4个模块;

,即create(新建), insert(插数), drop(删除)。

常见的数据类型有:

数值,e.g. int, bigint, bool, float, decimal等;

字符串,e.g. char, varchar, string等;

日期,e.g. date, datetime, timestamp等;

对应这3类数据类型的函数需要熟练掌握。

此外,还有两类必须掌握的函数:

1. 聚合函数,也称为“聚集函数”,常用的有:count, sum, avg, max, min, group by;

2. 窗口函数,即对一组值进行操作(不需要使用到group by),常见的函数有(此处以Hive举例):

计算:countsumavgmaxmin over;

分区:partition by;

位置:lag, lead, first_value, last_value等;

排序:row_number, rank, dense_rank, ntile;

e.g. 筛选用户最近的N单交易

row_number() over(partition byuser_idorder bycreate_time desc)

注:注意区分row_number, rank, dense_rank的差别

e.g.统计当日每小时累计交易金额

sum(orderamt) over(order byorder_hourrows between unbounded preceding and current row)

更多可以参考:http://lxw1234.com/archives/tag/hive-window-functions

荐书:

SQL必知必会,Ben Forta

注:作者还有两本《必知必会》,分别是讲MySQL和Oracle PL/SQL的

3. Python/R

Python和R不仅免费,还属于“平台模式”——来自世界各地的开发者都可以贡献自己开发的工具包。“平台模式”带来了大量的充满热情的用户,用户越多,软件的生命力就越强,发展也越快,这可以看作是软件生态的“人口红利”。

Python和R各有优缺点和相应的适用场景,数据分析(挖掘)90%以上的场景,两个软件都可以覆盖到,如果你已经在学其中一个,那就努力学好直至精通就行。

数据分析软件的学习框架都很相似,如下是个人总结的Python学习框架(仅供参考)。

注:更多可参考编程学习建议

注:Python学习框架

入门资料推荐:

Python

Python基础编程,Magnus Lie Hetland;

像计算机科学家一样思考Python,Allen B. Downey;

官方文档,包括其他常用数据分析module的官方文档(很多教程就是根据官方文档改编过来的);

R

R语言实战,Robert I. Kabacoff

Advanced R,Hadley Wickham

Cran Task Views: https://cran.r-project.org/web/views/

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20171211G039V500?refer=cp_1026

相关快讯

扫码关注云+社区