【发布时间】:2021-01-05 20:16:03
【问题描述】:
我在 pandas 中看到有一种方法可以删除重复项并忽略空值。 Drop duplicates, but ignore nulls 有没有办法在 Spark 中忽略空值(不删除那些行)时删除重复项?
例如:我想删除重复的“动物”
val columns=Array("id", "color", "animal")
val df1=sc.parallelize(Seq(
(1, "Blue", null ), // dont drop this
(4, "yellow", null ), // dont drop this
(2, "Red", "Fish"),
(5, "green", "panda"), // one panda row needs to drop
(6, "red", "panda"), // one panda needs to drop
(7, "Blue", "koala")
)).toDF(columns: _*)
df1.show()
val dropped = df1.dropDuplicates("animal")
dropped.show()
我看到 dropDuplicates,占用其他列。我尝试了这种方法,但它引入了另一个问题,即不删除不为空的重复动物。
【问题讨论】:
标签: scala dataframe apache-spark