为了账号安全,请及时绑定邮箱和手机立即绑定

在SparkDataFrame中找到每个组的最大行数

在SparkDataFrame中找到每个组的最大行数

FFIVE 2019-06-19 14:34:33
在SparkDataFrame中找到每个组的最大行数我试图使用SparkDataaframes而不是RDDs,因为它们看起来比RDD更高级,并且倾向于产生更易读的代码。在一个14个节点的Google Dataproc集群中,我有大约600万个名称,它们被两个不同的系统转换为ID:sa和sb..各Row含name, id_sa和id_sb..我的目标是从id_sa到id_sb使每个人id_sa,相应的id_sb是附加在所有名称中最常见的id。id_sa.让我们用一个例子来说明一下。如果我有下列行:[Row(name='n1', id_sa='a1', id_sb='b1'),  Row(name='n2', id_sa='a1', id_sb='b2'),  Row(name='n3', id_sa='a1', id_sb='b2'),  Row(name='n4', id_sa='a2', id_sb='b2')]我的目标是从a1到b2..实际上,与a1是n1, n2和n3,分别映射到b1, b2和b2,所以b2的名称中最频繁的映射。a1..以同样的方式,a2将被映射到b2..假设总有赢家是可以的:不需要断绝关系。我希望我能用groupBy(df.id_sa)但我不知道下一步该怎么做。我希望有一个聚合,最终生成以下行:[Row(id_sa=a1, max_id_sb=b2),  Row(id_sa=a2, max_id_sb=b2)]但也许我试图使用错误的工具,我应该回到使用RDDs。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 1495 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信