2017-11-30 2 views
0

Betrachten Ich habe die dataframe enthält folgende Daten,Wie wähle ich nur die erste Zeile aus wiederholten Werten in Spalten von Datenrahmen in Apache-Funke?

val seq = Seq((1, "John"), (1, "John"), (2, "Michael"), (3, "Sham"),(4, "Dan"), (2, "Michael"), (4, "Dan")) 

val rdd = sc.parallelize(seq) 

val df = rdd.toDF("id","name") 

Ich möchte output wie:

1, "John"

2, "Michael"

3, "Sham"

4, "Dan"

Wie kann ich select nur row vom dataset wo repeatation auf die beiden ID und Name column erlaubt ist.

+0

Sie wollen sagen, Sie wollen nur mit wiederholten Werten ausgeben ..? in deinem Fall sollte "Sham" nicht in der Ausgabe sein. Ist das korrekt ? –

Antwort

0

Sie können dropDuplicates() für Datenrahmen/Dataset verwenden.

0

Möglicherweise suchen Sie nach bestimmten Werten aus dem Datenrahmen.

df.distinct.orderBy("id").show(); 

Sie können die Bestellung fallen lassen, wenn Sie die Reihenfolge der Ergebnisse nicht wünschen. +---+-------+ | id| name| +---+-------+ | 1| John| | 2|Michael| | 3| Sham| | 4| Dan| +---+-------+

Verwandte Themen