做数据分析应该掌握的5个SQL数据清洗方法( 二 )

窗口函数的分组排序场景:假如现在你是某宝的分析师,要分析今年不同店的不同品类销售量情况,需要找到那些销量较好的品类,并在第二年中加大曝光,这个时候你就需要将不同店里不同品类进行分组,并且按销量进行排序,以便查找到每家店销售较好的品类 。

做数据分析应该掌握的5个SQL数据清洗方法

文章插图
 
Demo数据如上,一共a,b,c三家店铺,卖了不同品类商品,销量对应如上,要找到每家店卖的最多的商品 。
窗口分组Python版:df['Rank'] = df.groupby(by=['Sale_store'])['Sale_Num'].transform(lambda x: x.rank(ascending=False))窗口分组SQL版:select   * from  (  Select     *,    row_number() over(partition by Sale_store order by Sale_Num desc) rk  from     table_name  ) b where b.rk = 1
做数据分析应该掌握的5个SQL数据清洗方法

文章插图
 
可以很清晰的看到,a店铺卖的最火的是蔬菜,c店铺卖的最火的是鸡肉,b店铺?
嗯,b店铺很不错,卖了888份宝器狗 。
【做数据分析应该掌握的5个SQL数据清洗方法】总结,上面的内容核心是掌握这些数据清洗的应用场景,这些场景几乎可以涵盖90%的数据分析前数据清洗的内容 。而对于分析模型来说,SQL和Python都是工具,如果熟悉SQL,是能够更快速、方便的将特征清洗用SQL实现 。
文源:数据管道 作者:宝器




推荐阅读