文章目录
前言
从本质上来讲,我不是一位数据分析师,我的岗位在我们公司被称之为BI
,即Business Intellegence
的缩写,也就是商业智能化,实际上更偏向于数据处理
我在数据分析方向工作的时间也是非常有限的,而且我还是转行者.即便如此,我仍然想将我的经验分享给你,希望你能成为一位更优秀的数据分析师
解决你的问题
目前你的问题是:每日处理500万行的数据,用到了Excel里面的筛选和数据透视表.关于这个问题,我上次也和你说过,需要用MySql
解决.你先尝试过Power Query
直接从文件夹导入数据,结果Excel
崩了.所以目前最优解决方案仍然是:
MySql + Power Query + Excel
数据存储不一定得是MySql
,也有可能是SqlServer
,或者Access
.但是后二者,一个有版权问题,一个似乎并不太能处理大量数据.MySql
是目前的最优选择,而且我一直用MySql
,这对于后续问题交流和解决也更方便
解决问题的方式也像我上次和你说的一样
这些都只是解决问题的临时方案,所以,我根据我们的经验,给你大概规划了一条学习路径
学习路径
如何成为一位基础的数据分析师
在这个阶段,你所需要会的技能,只有Excel
.
大部分数据源获取,数据处理,展现,都只需要Excel
就可以完成.而根据我的工作以及面试经验来看,基本上掌握一些函数加透视表就可以了
Vlookup
Sumif
Sumifs
Countif
Countifs
- 数据透视表
这个阶段的工作流程大致是这样
这样的工作就是最无聊的复制粘贴.如果能从这样的工作中跳出来,才能成为下一个阶段的数据分析师
如何成为一位较好的数据分析师
在这个阶段,往往是处理大批量数据的阶段.这个阶段需要用到数据库.数据库有很多种,如果是像你这种常规处理固定字段的数据,MySql
是比较适合的.这一阶段需要掌握的技能大概是
MySql
Power Query
数据透视表
虽然只是比上面多了一项数据库,但是实际内容却多了很多.因为我有认识一些开发工作5,6年,也并不是特别熟悉如何写一份高效的SQL
脚本,也有很多功能要向DBA
请教.在MySql
里面,Select
语句是用得最多,也是最难学的一项,是为重中之重
这个阶段,工作流程应该是这样的
如何成为一位优秀的数据分析师
这个阶段更多是建模,工作从零碎趋向于一劳永逸,而在这个阶段,需要掌握的技能也增加了
MySql
Excel
Power Query
Power Pivot
数据透视表
在这个阶段,会针对大数据进行优化.在更加熟练的掌握了Select
之后,需要对你的SQL
语句进行调优,也就是跑得更快.
以你的500万数据为例,在上一个阶段,可能通过写Select
将数据缩小到结果数据的30万,然后加载到Excel
.但是在这个阶段,可能是在MySql
里面写好脚本将30万的数据放入数据库而不是Excel
,再根据具体需要展示的内容进一步缩小数据的行数和列数,可能加载到Excel
的最终结果甚至只有1万行.这时候有4句SQL
将会用得最多
delete from test_table;
insert into test_table
select ...
drop table if exists test_table;
create table test_table
select ...
这个阶段建议的工作流程是
如何成为一位更优秀的数据分析师
这个阶段,你需要考虑全自动化了.这个阶段的主力军是Python
,技能差不多如下
Python
MySql
Excel
Power Query
Power Pivot
数据透视表
仍然按照上一个阶段的流程,我们只是插入了一些"标签"
Python
将整个过程自动化了.只要数据源稳定供应,这一个流程就可以让机器自动执行.你要做的,只是看下任务有没有正常运行,或者进一步,看下有没有报错提示.
如何成为一位更更优秀的数据分析师
这个阶段,要熟练使用各种工具了.如果到这个阶段,可能你更像一位开发工程师.工具都是各种各样的,所以推荐我们目前在用的如下
Jenkins
Visual Studio Code
OneDrive
Gitlab
kettle
Python
Mysql
Excel
工具都是为了帮你更好的实现目的
如何成为一位更更更优秀的数据分析师
这个阶段是我个人杜撰的,只加入了一个单词
Linux
如何成为一位骨灰级的数据分析师
这个阶段是分析和布局.数据分析师实际上应该是一个更偏向于分析而不是处理的工作,而大部分理论方法都很难直接套用到现实环境.除了需要了解大部分理论以外,还需要真正做到数据驱动业务,你应当知道你需要什么样的分析,更加需要知道你需要怎样的技术来支撑你的分析.
这是我望尘莫及的阶段
共勉😺