如何删除pig中重复的数据行

gcuhipw9  于 2021-06-24  发布在  Pig
关注(0)|答案(2)|浏览(337)

“youtube回放:2017年的形状|#youtube回放”137843120 3014479 1602383 817582
“youtube回放:2017年的形状|#youtube回放”125431369 2912715 1545018 807558
“youtube回放:2017年的形状|#youtube回放”113876217 2811217 1470387 787174
“youtube回放:2017年的形状|#youtube回放”100911567 2656678 1353655 682890
“惊奇电影公司的复仇者:无限战争官方预告片”89930713 2606665 53011 347982
“惊奇电影公司的复仇者:无限战争官方预告片”874502452584675 52176 341571
“漫威工作室的复仇者:无限战争官方预告片”84281319 2555414 51008 339708
“惊奇电影公司的复仇者:无限战争官方预告片”80360459 2513103 49170 335920
“youtube回放:2017年的形状|#youtube回放”75969469 2251826 1127811 827755
“惊奇电影公司的复仇者:无限战争官方预告片”74789251 2444960 46172 330710
“漫威工作室的复仇者:无限战争官方预告片”66637636 2331359 41154 316185
“惊奇电影公司的复仇者:无限战争官方预告片”56367282 2157741 34078 303178
“youtube回放:2017年的形状|#youtube回放”52611731891822 884963 702784
“给我们的女儿”512431490
“给我们的女儿”48635732 0
在上面的数据中有两列,一列是“标题”,另一列是视图、喜欢、不喜欢、评论和计数。
如何使用过滤器和删除重复数据我想删除具有相同“标题”的数据,并保留具有最高视图的数据

s1ag04yj

s1ag04yj1#

数据有15列,我选择了5列,这5列在问题“选择指定列”中提到,定义了上述问题的表
仅\u likes=foreach select指定的\u列生成$0,$1;
将only_likes存储到“test/only_likes”中;
group\u likes=组只喜欢0美元;
将组喜欢的内容存储到“测试/组喜欢”中;
max\u likes=foreach group\u likes generate group,max(仅\u likes.views);
将maxïlikes存储到“test/maxïlikes”中;
result\ u likes=订购最多\ u likes$1 desc;
将结果存储到“test/result-likes”中;
我是用下面的命令做的

c6ubokkw

c6ubokkw2#

如果要保留与max likes对应的记录的所有字段,则必须执行以下操作:

dataAll = LOAD 'path' USING PigStorage('\t') AS (title:chararray, views:long, likes:long, dislikes:long, comment_count:long);

--group the data by title so that all records belonging to a title fall into a bag in the same record
dataGrouped = GROUP dataAll BY title;

--Using a nested foreach, order the contents of the bag by likes and pick the top record
dataDeduped = FOREACH dataGrouped {
                 soredtedByLikes = ORDER dataAll BY likes DESC;
                 maxLikesRecord = LIMIT soredtedByLikes 1;
                 GENERATE FLATTEN(maxLikesRecord);
              }

STORE dataDeduped INTO 'outputPath' USING PigStorage('\t');

嵌套foreach在这种情况下非常有用。点击此处查看更多信息:https://www.safaribooksonline.com/library/view/programming-pig/9781449317881/ch06.html (在该链接中搜索嵌套的foreach)。

相关问题