gpt4 book ai didi

python - pyspark 试图检索具有相同 id 的行

转载 作者:可可西里 更新时间:2023-11-01 16:39:05 24 4
gpt4 key购买 nike

我正在使用 spark 2.1.0。下面是我的数据框。问题陈述来自 b 列,我需要检索在 a 中具有相同值而在 b 中具有不同值的行。提到了结果数据框

a   b

1 2

1 3

1 4

2 6

3 7

结果数据框:

a b

1 2

1 3

1 4

我使用了下面的代码,但它不起作用

sqlCtx.sql("select * from df1 group by a,b having count(a)>=2")

请帮我解决这个问题。

最佳答案

希望这对您有所帮助!

import pyspark.sql.functions as func
df = sc.parallelize([(1,2), (1,3), (1,4), (2,6), (3,7)]).toDF(["a", "b"])
df.show()
df1 = df.groupBy('a').agg(func.collect_list('b').alias("b_list"),func.count('b').alias("count")).filter(func.col('count') > 1)
df2 = df1.rdd.flatMap(lambda row: [(row.a, b) for b in row.b_list]).toDF(["a", "b"])
df2.show()

(编辑注释:更正了拼写错误)

如果它解决了您的问题,请不要忘记告诉我们:)

关于python - pyspark 试图检索具有相同 id 的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45460336/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com