2016-11-13 29 views
0

Ich habe ein Datenrahmen wie folgt aus:sortieren Datenrahmen der Spalte nach Datum

+---+-------------------+ 
|C1 |  C2   | 
+---+-------------------+ 
| A |21/12/2015-17-14-12| 
| A |21/12/2011-20-12-44| 
| B |11/02/2015-15-31-11| 
| B |09/04/2015-13-38-05| 
| C |11/06/2013-23-04-35| 
+---+-------------------+ 

die zweite Spalte ist ein Zeitstempel tt/mm/jjjj-hh-mm-ss. Ich möchte jede Zeile sortieren, wie die

+---+-------------------+ 
|C1 |  C2   | 
+---+-------------------+ 
| A |21/12/2011-20-12-44| 
| C |11/06/2013-23-04-35| 
| B |11/02/2015-15-31-11| 
| B |09/04/2015-13-38-05| 
| A |21/12/2015-17-14-12| 
+---+-------------------+ 

Vielleicht muss ich einen Udf verwenden? Haben Sie eine Idee?

Antwort

1

Ein einfacher Einleiner ist alles was Sie brauchen. Erforderliche Importe

import org.apache.spark.sql.functions.unix_timestamp 

Und der Code:

input.sort(unix_timestamp($"C2", "dd/MM/yyyy-HH-mm-ss"))