【发布时间】:2017-01-09 05:19:44
【问题描述】:
我有一个 pyspark 数据框,例如:其中 c1,c2,c3,c4,c5,c6 是列
+----------------------------+ |c1 | c2 | c3 | c4 | c5 | c6 | |----------------------------| | a | x | y | z | g | h | | b | m | f | l | n | o | | c | x | y | z | g | h | | d | m | f | l | n | o | | e | x | y | z | g | i | +----------------------------+
我想为具有相同 c2、c3、c4、c5 值但 c1 值不同的行提取 c1 值。
比如,第 1、第 3 和第 5 行的 c2、c3、c4 和 c5 值相同,但 c1 值不同。所以输出应该是a, c & e。
(update)
同样,第 2 行和第 4 行的 c2、c3、c4 和 c5 值相同,但 c1 值不同。所以输出也应该包含 b & d
我怎样才能得到这样的结果?我曾尝试应用 groupby,但我不明白如何获得 c1 的不同值。
更新:
输出应该是 c1 值的 Dataframe
# +-------+
# |c1_dups|
# +-------+
# | a,c,e|
# | b,e|
# +-------+
我的方法:
m = data.groupBy('c2','c3','c4','c5)
但我不明白如何检索 m 中的值。我是 pyspark 数据帧的新手,因此非常困惑
【问题讨论】:
-
您的问题有点难以理解。你能写出输出数据框的例子吗?
-
谢谢 :) 请检查我的更新
-
你能用你尝试过的方法更新吗?
-
这是一种最小化的方法。但是,是的,更新了
标签: python apache-spark dataframe pyspark