获取嵌套列表中的前两个元素 - pyspark

哑光浅

假设我有一个列表L=[[a,2],[a,3],[a,4],[b,4],[b,8],[b,9]]使用 pyspark 我希望能够删除第三个元素,使其看起来像这样:

[a,2]
[a,3]
[b,4]
[b,8]

我是 pyspark 的新手,不确定我应该在这里做什么。

保利

你可以尝试这样的事情。
第一步是 groupbykey列和列表中的聚合值。然后使用 udf 获取列表的前两个值,然后分解该列。

df = sc.parallelize([('a',2),('a',3),('a',4),
                       ('b',4),('b',8),('b',9)]).toDF(['key', 'value'])
from pyspark.sql.functions import collect_list, udf, explode
from pyspark.sql.types import *

foo = udf(lambda x:x[0:2], ArrayType(IntegerType()))
df_list = (df.groupby('key').agg(collect_list('value')).
                   withColumn('values',foo('collect_list(value)')).
                   withColumn('value', explode('values')).
                   drop('values', 'collect_list(value)'))
df_list.show()

结果

+---+-----+
|key|value|
+---+-----+
|  b|    4|
|  b|    8|
|  a|    2|
|  a|    3|
+---+-----+

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

比较两个无序列表,并找出pyspark中哪些元素不匹配

来自分类Dev

在pyspark中合并两个RDD

来自分类Dev

过滤pyspark中的两个RDD

来自分类Dev

Pyspark:如何筛选两个列值对的列表?

来自分类Dev

在PySpark列的列表列表中获取第一个元素的最大值

来自分类Dev

如何在Pyspark中逐元素连接两个ArrayType(StringType())列?

来自分类Dev

Pyspark爆炸嵌套列表

来自分类Dev

获取pyspark中两个特定条目之间的条目数组

来自分类Dev

Python:如果前两个元素相同,则在嵌套列表中添加元素

来自分类Dev

pyspark中两个DataFrames列之间的区别

来自分类Dev

查找Pyspark中两个日期之间的周末天数

来自分类Dev

查找Pyspark中两个日期之间的周末天数

来自分类Dev

在 PySpark Python 中减去两个日期列

来自分类Dev

如何在python中获取两个嵌套列表的每个元素的交集?

来自分类Dev

PySpark当列表中的项目

来自分类Dev

Pyspark:根据两个RDD中两个列的条件,计算两个对应列的总和

来自分类Dev

(PySpark)reduceByKey之后的嵌套列表

来自分类Dev

如何使用PySpark在数据框中按位置明智地合并两个列表

来自分类Dev

pyspark按两个因素分组的前10个术语

来自分类Dev

在pyspark中按元素添加列表

来自分类Dev

PySpark - 获取组中每个列表的大小

来自分类Dev

分解两个PySpark数组并使元素保持相同位置

来自分类Dev

如何比较pyspark中两个不同数据帧中的两列

来自分类Dev

将列表中的前两个元素

来自分类Dev

如何获取前两个列表中的公共元素并保存到python 3中的新列表?

来自分类Dev

从两个列表中获取元素的所有组合?

来自分类Dev

从两个列表中获取相应的元素

来自分类Dev

同时从列表中获取两个元素

来自分类Dev

匹配列表的前两个元素

Related 相关文章

  1. 1

    比较两个无序列表,并找出pyspark中哪些元素不匹配

  2. 2

    在pyspark中合并两个RDD

  3. 3

    过滤pyspark中的两个RDD

  4. 4

    Pyspark:如何筛选两个列值对的列表?

  5. 5

    在PySpark列的列表列表中获取第一个元素的最大值

  6. 6

    如何在Pyspark中逐元素连接两个ArrayType(StringType())列?

  7. 7

    Pyspark爆炸嵌套列表

  8. 8

    获取pyspark中两个特定条目之间的条目数组

  9. 9

    Python:如果前两个元素相同,则在嵌套列表中添加元素

  10. 10

    pyspark中两个DataFrames列之间的区别

  11. 11

    查找Pyspark中两个日期之间的周末天数

  12. 12

    查找Pyspark中两个日期之间的周末天数

  13. 13

    在 PySpark Python 中减去两个日期列

  14. 14

    如何在python中获取两个嵌套列表的每个元素的交集?

  15. 15

    PySpark当列表中的项目

  16. 16

    Pyspark:根据两个RDD中两个列的条件,计算两个对应列的总和

  17. 17

    (PySpark)reduceByKey之后的嵌套列表

  18. 18

    如何使用PySpark在数据框中按位置明智地合并两个列表

  19. 19

    pyspark按两个因素分组的前10个术语

  20. 20

    在pyspark中按元素添加列表

  21. 21

    PySpark - 获取组中每个列表的大小

  22. 22

    分解两个PySpark数组并使元素保持相同位置

  23. 23

    如何比较pyspark中两个不同数据帧中的两列

  24. 24

    将列表中的前两个元素

  25. 25

    如何获取前两个列表中的公共元素并保存到python 3中的新列表?

  26. 26

    从两个列表中获取元素的所有组合?

  27. 27

    从两个列表中获取相应的元素

  28. 28

    同时从列表中获取两个元素

  29. 29

    匹配列表的前两个元素

热门标签

归档