2016-08-29 5 views
2

Ich versuche, Code zu konvertieren Datum-Uhrzeit-Spalten Datum und last_updated_date, die tatsächlich Unix-Zeiten als doppelt in "mm-dd-yyyy" Format für die Darstellung umgewandelt werden. Wie mache ich das ?Scala Spark: Konvertieren Doppelspalte zu Datum Uhrzeit Spalte in Datenframe

import org.joda.time._ 
import scala.tools._ 
import org.joda.time.format.DateTimeFormat._ 
import java.text.SimpleDateFormat 
import org.apache.spark.sql.functions.{unix_timestamp, to_date} 
root 
|-- date: double (nullable = false) 
|-- last_updated_date: double (nullable = false) 
|-- Percent_Used: double (nullable = false) 

+------------+---------------------+------------+ 
|  date| last_updated_date|Percent_Used| 
+------------+---------------------+------------+ 
| 1.453923E12|  1.47080394E12| 1.948327124| 
|1.4539233E12|  1.47080394E12| 2.019636442| 
|1.4539236E12|  1.47080394E12| 1.995299371| 
+------------+---------------------+------------+ 

Antwort

1

Cast Zeitstempel:

df.select(col("date").cast("timestamp")); 
+0

Hmm ich denke, es gibt einige Probleme, da Datum dabei ist, ist "lang" und das ist wodurch die Daten aus dem Gleichgewicht geraten, wenn sie dies direkt tun –

1

es zu einem Zeitstempel konvertieren from_unixtime mit:

df.select(from_unixtime("date").as("date")) 
Verwandte Themen