我有Pyspark数据帧,模式如下
root
|-- id: string (nullable = true)
|-- address: string (nullable = true)
|-- phone_list: array (nullable = true)
| |-- element: string (containsNull = true)
示例:
id address phone_list
1 HaNoi [ 012346789, 032145698, 0565622253 ]
2 Singapore [ 012346789, 069855633 ]
3 Moscow [ 023466466, 069855633 ]
4 Tokyo [ 044656611, 061316561 ]
您可以看到,id 1与id 2(012346789)有一个共同的电话号码,id 2与id 3(069855633)有一个共同的电话号码,因此我想创建新的dataframe来将这些id分组在一起。 它看起来像:
id address phone_list
1 [ HaNoi , Singapore, Moscow ] [ 012346789, 032145698, 0565622253, 069855633, 023466466 ]
2 [ Tokyo ] [ 044656611, 061316561 ]
有人知道提示或解决方法吗?你知道吗
你将需要首先爆炸的电话号码,然后做一个小组的电话号码和收集名单的地址。此外,您还需要收集电话号码上的\u集(collect \u set()包含不同的元素,collect \u list()包含所有元素)以获得不同的电话号码集。如果你想要完整的代码,请告诉我。你知道吗
在你的情况下我会做的是
我会按电话号码分组!你知道吗
相关问题 更多 >
编程相关推荐