00:00
好了,同学们来了啊,咱们把这个需求啊,咱们分析完了,接下来咱们要做的事情就是用代码把这个功能实现了,对不对,好,那我们现在一块儿来看一看啊来。我现在呢,把这个拷贝一下啊,咱们叫24,但是呢,我这里就不叫做这个了,咱们换一个名字叫requirement,叫re e q吧,嗯,Requirement呢,表示的是需求的意思啊,那我这里呢,给它来,我们点击OK,然后呢,我放过来,放过来以后把这个呢,我们去掉啊,咱们叫做案例实操,案例实操好把里面的代码呢,咱们全去掉啊来,那首先我们把这个思路呢,稍微的再捋一捋,刚才呢,我们是通过画图的方式,把这个我们的思路呢,咱们给它画出来了啊,那么这个画出来了还不行,我们还得通过文字的方式再把它梳理一下,首先我们的第一个。
01:00
我们应该干嘛呢?获取啊,获取咱们的原始数据,对吧,就是你的数据是什么样子的,你得把它获取到,哎,就是这样啊,来那获取到的数据,那么其实不就是这个东西嘛,对不对,就是它了啊,就是它,嗯,好,我们放到这里啊,这是我们的时间戳省份城市用户和广告啊好,但是你拿原始数据肯定意义不大嘛,因为有些数据可能不是我想要的,对不对,所以来咱们接着写啊。将啊,我们什么呢?将我们的原始数据啊,原始数据进行结构的转换啊,这样的话,你进行结构转换以后呢,干嘛呢,叫方便我们的统计啊,方便我们的统计,那你怎么进行结构的转换呀,这就看你需要什么了,本身呀,原来是这个样子,对吧?那你想要什么,你想要什么,大家看一下,回过头来看这个图,这个图当中我们说了,首先你把多余的去掉,这不就是一种结构的转换嘛,对不对。
02:02
那好,但是你转换之后,你会发现我还要变成这个样子,我还要变成这个样子,按理说你要经过三成的转换能变成它,但是其实啊,我们完全可以干嘛呢?诶,只通过一次就可以了,为什么呢?因为这三个转换它是一个整体,对不对?你都能找到它了,我直接变成它不行吗?所以啊,画图的时候记住它表述的是我们的一种思路。那我们代码并不能说按照我们的思路呢,我们一层一层挨个写一遍,那这个太费劲了,对不对,所以啊,咱们准备干嘛呢,想把这样的数据,我们想给它变成。什么样呢?先把它变成这个样子的啊,来我们写上括号,我们叫做什么呢?我们就叫做省份啊,咱们叫省份,再加上我们的广告,诶,然后写个逗号一,诶这样如果你能把这样的数据你变成它,那就OK了呀,诶是不是同学们就是这个意思啊,那我们现在呢,那变成它,我们说了方便统计,那你咋统计啊,所以呢,来写上三,嗯。
03:10
将转换结构后的数据进行我们的分组聚合,那么你分组聚合的情况下,大家想一想不就是这玩意儿吗?那么你这个地方它如果有多个的情况下,你最终所形成的效果不就是应该是萨吗?大家想想是不是这意思,你这样聚合呀,你们的这个地方是我们的什么word,那它不就是count吗?那所以some不就出来了吗?对不对,好了,那你如果sum出来的话,是不是就等同于咱们的这一步就算是做完了呢?但是你做完了以后,大家想想你是最终想要的吗?不是你最终想要的是要把这个省份和我们的这个广告给它分开,对不对?那么所以说我们再写上第四步来。将我们聚合的结果啊,将聚合的结果啊,进行我们叫结构的转换,哎,就是这样的,那你要怎么做呢?大家看一下来把这个拷贝。
04:11
拷贝以后,那你想做的其实是什么?你想做的其实就是把省份诶拿出来,然后呢,把这个广告和我们的sum呢当成一个整体,对不对?所以广告诶和那个sum当成一个整体,所以啊这个结构如果能形成的话,那就好办了,我们的第五步,第五步呢,就可以相同的省份来进行分组了,所以来写上将我们转换结构后的数据啊后的数据根据我们的省份进啊根据我们的省份嗯进行我们的分组,那么你进行分组的情况下,那我们把不同的广告分在一个组当中,大家想想那么就形成什么效果了,所以啊来拷贝,拷贝以后记住省份不变,那咱们这个广告是不是就有多个了,对不对,诶它就会有多个了啊就是这样的,所以来我们这个广告。
05:11
诶,这是它这个为了区分开,咱们叫广告A呀,啊,然后呢,Sum a对吧,那么我们广告B,诶咱们的sum b,当然还有C啊D之类的,对不对,哎,就是这样,所以啊,你通过这种方式把咱们的数据给它分个组,那么你分完组以后问题来了,你的广告A广告B它的顺序不对,而且可能有很多对不对,所以啊,咱们的第六步来,嗯。将我们分组后的数据呢?诶干嘛呢,我们叫做组内啊,咱们叫做组内啊排序啊,这个排序你要知道它是根据我的数量来排序,数量多的在前,数量少的应该在后,所以它应该是一个什么,我们的降序,那既然是降序的话,你全要吗?不是,然后呢,取咱们叫做前三名,诶就是这个意思。
06:06
好了,那我们这个第七步,当你在我们第六步的时候把结果拿到了,那么你第七步就是采集我们的数据,打印在控制台,所以这就是我们的一个文字上的一个梳理,把整个的图形用文字的方式给它描述出来,并且在我们写这个文字的时候呢,我们大概就有一个代码的一个书写的一个思路,对吧?前面呢是我们实现的思路,现在呢,是我们代码该怎么写,有一个简单的思路了。好了,同学们,这个呢,我们先说到这里。
我来说两句