如何用 Python 分析数据?

林骥
林骥
林骥
44
文章
0
评论
2021-08-1317:35:03 评论 778 2856字
摘要

本文介绍了分析数据、解决问题的一种思路。首先,明确业务的具体目标;其次,应用分析思维来理解业务的实际情况;再次,用 Python 对数据进行汇总处理;然后,综合运用各种分析思维和分析工具,对数据进行分析推理;最后,得出主要的分析结论,提出有效的行动建议。

 

0. 序言

 

经过前期的读取数据、清洗数据、操作数据、转换数据和整理数据,接下来我们将进入分析数据的阶段,这是数据分析工作的重中之重

 

如何用 Python 分析数据?

 

假设你的客户可能是你的领导,也可能就是你自己),给你发来一份销售数据,他希望你分析分析,看看如何提高销量。

 

你不妨先自己思考一下,当你接到这个分析任务的时候,你会怎么做?然后再看看下面我是怎么做的,这也是一种对比思维,促进自己多思考和总结,欢迎在文章下面留言分享你的想法。

 

1. 明确目标

 

上初中的时候,我们学过函数的概念,通常用 y = f(x) 来表示函数,它包含 3 个要素:自变量 x、因变量 y 和对应法则 f。我们可以把函数中的 y 理解为目标,把 x 理解为数据,把 f 理解为实现目标的方法,要找到合适的方法不容易,这需要对业务有深刻的理解。

 

数据分析的第一步,是明确业务的目标,关键在于搞清楚客户关心的是什么。如果未明确目标就进行数据分析,那么就如同旅行没有目的地,不知道终点在哪里。

比如说,客户的目标是提高销量,但这还不够明确,为了搞清楚客户的真正意图,你得了解更多的信息,多问几个「是多少」,使目标得到量化。例如:您希望销量提高多少?

 

2. 应用思维

 

现实世界复杂多变,我们通常应用思维来理解业务的实际情况。

 

你的分析观点往往来自于你的分析思维,所以正确地运用好分析思维是非常重要的。

 

参考《数据分析的 8 种思维首先,我们可以运用对比思维,对数据进行有效的对比,这是数据分析工作的核心方法之一。

 

其次,我们运用细分思维,对数据进行细分,关键是要找出高效的对比因子,先分维度,再分粒度。通过多个维度的细分,将对比的差异按粒度逐级锁定,对问题进行定位,寻找问题的根源。

 

然而,问题的答案可能还是没有找到,此时你可以运用溯源思维,密切关注更多的细节数据,想办法从原始数据中进行追溯,思考用户的行为特征,深入挖掘数据背后隐藏的信息。

 

在数据分析的过程中,我们可以运用假设等思维,大胆假设,小心求证。无论是构建复杂的分析模型,还是进行简单的数据决策,都要做出自己的设想和判断。

 

最后,要做好思想准备,如果通过分析,发现数据有违你的假设,那么就更加需要你进行详细思考,仔细推敲,在这个过程中,你对用户行为的理解也会逐渐加深,从而数据分析的功力也会得到增强。

 

3. 处理数据

 

假设经过整理后的销售数据如下表:

 

如何用 Python 分析数据?

 

我们用 Python 进行读取并预览数据

 

如何用 Python 分析数据?

 

通过观察发现,数据中包含每天的实际销量、目标销量和目标完成率,为了从更加宏观的层面,把握销售的整体情况,我们按月份进行汇总,首先,在表格最前面的位置插入一列:月份。

 

如何用 Python 分析数据?

 

然后按月份进行汇总求和,重新计算月度汇总的目标完成率,并将汇总结果保存到 Excel 文件中。

 

如何用 Python 分析数据?

 

 

4. 分析推理

 

 

仔细观察上面的月度汇总数据,你会发现,与 7 月份进行对比,8 月份的销量略有上升,但与目标进行对比,目标完成率反而下降,这是一个比较严重的问题。

 

为了搞清楚这个问题产生的原因,你可以先进行探索性的数据分析。

 

在 Python 中,有一个很实用的包:pandas-profiling,号称用 1 行代码就能生成数据分析报告。如果你还没有安装的话,推荐你在命令行运行一下:pip install pandas-profiling,然后在 Jupyter Notebook 中运行以下代码:

 

如何用 Python 分析数据?

 

这是一份比较详细的探索性数据分析报告,上图仅显示了其中一小部分信息,往下拉,可以看到每个变量的数据分布等情况。
 
如何用 Python 分析数据?

 

继续往下拉,还可以看到各个变量之间的相关性,从图中能够直观地看到:实际销量与目标完成率之间具有比较强的正相关性,这也很好理解,因为在目标销量变化不大的情况下,实际销量越高,目标完成率也就越高。

 

如何用 Python 分析数据?

 

 

在做进一步的分析之前,你还需要熟悉业务的背景,假设公司经营的业务是在网上商城卖化妆品,提高 8 月份目标销量,是因为 8 月份加大了广告费的投入。但是,广告的效果并没有达到预期,所以目标完成率下降了。

 

对于「如何提高销量」这样一个大问题,我们很难直接回答,可以试着细分为小问题,例如:哪种促销方式效果更好?我们的用户希望得到什么?

 

上面案例中的销量数据,已经按时间的维度做了划分,实际上,除了按时间维度进行细分以外,还可以尝试很多种不同的细分维度。比如说,按地区的维度:省份、城市等等,按销售渠道的维度:京东、天猫等等。

 

现实情况往往是复杂的,需要你运用相关思维,理清各种关系。比如说,从广告展示,到用户点击,再到付款购买,形成一个销售漏斗,每个环节都有相应的转化率指标。

 

为了寻找提高销量的机会,你可以尝试运用假设思维,列出一些假设情况,例如:假设换种促销方式会怎么样?假设降低产品的价格会怎么样?

 

假设你经过深入分析,在原始数据中,发现一些购买保湿霜的男性用户,而这些保湿霜原本是专门为女性用户设计的。经过调研,你知道了这些男性购买化妆品的用途,原来他们是用保湿霜来做剃须后的保养,这恐怕是一个有价值的发现。

 

5. 提出建议

 

 

你怀着激动的心情,开始撰写数据分析报告。此时你要记住,数据分析报告的重点,不是那些花里胡哨的图表,而是提出有效的行动建议。

 

除非将数据分析用于做出更好的决策,否则,数据分析将毫无用处。

 

因此,作为一名数据分析师,要想方设法提出有效的行动建议,为业务创造价值。

 

首先,你要清楚地知道,自己从数据中发现了什么,要指出不确定因素,小心防范并想办法填补知识的空白,尽量避免作出过头的结论,对分析结果负责,积累自己的信用,让客户更尊重和信任你,并理解你的分析和判断也具有局限性。

 

其次,你提出的行动建议,重点是要得到客户的理解,鼓励客户以数据为基础,从而作出明智的决策。

 

最后,在数据分析报告中,你需要简明扼要地阐述分析成果,并提出建议改善的措施。

 

例如:我深入地分析了销售数据,做了很多种不同的大胆假设,并小心检验了假设的合理性。我发现有一群男性用户,他们用女性的保湿霜,来做剃须后的保养。这群人对产品的需求很特别,但是,他们并不宣扬自己的这种需求,导致我们平时很难发现他们。因此,建议推出男性更容易接受的剃须保养产品,增加对这群人的广告投放我认为这将提高销量。

 

6. 小结

 

本文介绍了分析数据、解决问题的一种思路。

 

首先,明确业务的具体目标。

 

其次,应用分析思维来理解业务的实际情况。

 

再次,用 Python 对数据进行汇总处理。

 

然后,综合运用各种分析思维和分析工具,对数据进行分析推理。

 

最后,得出主要的分析结论,提出有效的行动建议。

 

限于文章的篇幅,本文并没有深入探究具体的业务细节,如果你想了解更多分析数据的方法,请在文章下面留言告诉我

 

下面是本文的思维导图:

 

如何用 Python 分析数据?

 

 

 

End.

爱数据网专栏作者:林骥

作者介绍:数据赋能者,专注数据分析 10 多年。

个人公众号:林骥(linjiwx)

本文为挖数网专栏作者原创文章,未经允许禁止转载,需要转载请微信联系授权(微信号:lovedata0520)

更多文章前往爱数据社区网站首页浏览http://www.itongji.cn/

 

  • 我的微信公众号
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: