书名是《深入浅出的数据分析》,原书写的比较浅显,我在这里分章节总结一下,原书是用的r语言,这里我会用python来实现。
文章先是给出了开支表格
import pandas as pd
import matplotlib.pyplot as plt
total_sales = [5280000, 5501000, 5469000, 5480000, 5533000, 5554000]
target_sales = [5280000, 5500000, 5729000, 5968000, 6217000, 6476000]
ad_fees = [1056000, 950400, 739200, 528000, 316800, 316800]
social_fees = [0, 105600, 316800, 528000, 739200, 739200]
unit_price = [2.0, 2.0, 2.0, 1.9, 1.9, 1.9]
df = pd.DataFrame({'总销量': total_sales, '目标销量': target_sales, '广告费': ad_fees, '社交网络费': social_fees, '单价': unit_price},
index=['9月', '10月', '11月', '12月', '1月', '2月']).T
书中给出了具体步骤:
1.确定:确定问题并且了解问题
2.分解: 分解问题和数据,使其成为更小的组成部分
3.评估: 根据前两步了解到的情况作出各种结论
4.决策: 把结论组合在一起作出一个决策(建议)
为了直观,我们可以把以上数据作成图:
plt.figure(1)
plt.subplot(221)
plt.plot(total_sales, 'b--')
x = [0, 1, 2, 3, 4, 5]
my_xtick = ['9', '10', '11', '12', '1', '2']
plt.xticks(x, my_xtick)
plt.plot(target_sales, 'r--')
plt.xticks(x, my_xtick)
plt.subplot(222)
plt.plot(ad_fees, 'b--')
plt.xticks(x, my_xtick)
plt.plot(social_fees, 'r--')
plt.xticks(x, my_xtick)
plt.subplot(212)
plt.plot(unit_price, 'r-')
plt.xticks(x, my_xtick)
plt.show()
关于matplotlib的用法这里就不赘述了,看看官方文档就好。
图中我们可以看到目标销量基本是线性增长的,而实际销量则几乎没有增长。
广告的策略是传统广告费逐月递减,社交网络广告费逐月递增, 而两者总和几乎不变。(最开始斜率比较小,然后固定斜率,最后保持不变)
12月份产品降价。
图中我们可以看到降价并没有很好的增加利润,同样这种广告费的调整也没有体现在实际销量上。
如果我们把目标销量视为应该达到的实际销量的话,那么我们当前每个月的销量则是在递减,这里与之吻合的就是减少了传统广告费。
书中这里让我们提5个问题,而书中已经给了模版并且给了答案,我们来看一下结论:
1.首先这种线性的目标销量没有调整空间,这是硬性要求。
2.产品的主要消费群体(11~15岁)女性。
3.他们认为目标销量是合理的,因为他们觉得这个群体潜力是无限的。
4.竞争对手的销量没有具体数字,他预估是他们利润的 150%~200%。
5.广告总费用是上一个月收入的20%。
把问题和数据分解成更小的模块:
我们需要将问题拆分成(可管理,可解决)的组块,将大问题拆分成小问题,通过回答小问题来解决大问题。
先来看客户确信的观点:
1.产品的消费群体。
2. 广告费用的方法是否成功尚不可知。
3.产品在这个群体销售潜力是无限的(不存在饱和)。
4.竞争对手更为强大
数据带给我们的结果:
1.销量9月到10月增长比较大,以后就基本持平。
2.目标销量与实际销量从这之后变开始南辕北辙。
3.降价看来无助于销量达标。
4.削减传统广告费并增加社交网络费可能影响销量。
从以上来看,第四条也是我们唯一能得到的一个结论了。我们只能建议把总广告费用占比调到去年9月的情况来看看销量变化如何了。
这时文章给了一个“新闻”,结论是在少女消费市场该类产品已经饱和。
这则新闻的结论很明显和客户确信的观点有冲突。
这种对外界假设和你确信的观点被称为你的心智模型。
我们从中很容易发现,客户给的某些观点并没有得到数据的支持(客户群体,竞争对手水平)
我们应该拿到原始数据,而不是汇总后的表格。
后面数据表单就不再罗列了,这一章主要就是客户群体定位出现错误,而且错误是显而易见的。