繁体   English   中英

Scala Spark:将数据框中的双列转换为日期时间列

[英]Scala Spark : Convert Double Column to Date Time Column in dataframe

我正在尝试编写代码以将日期时间列 date 和 last_updated_date 转换为“mm-dd-yyyy”格式以显示。 我该怎么做?

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|
+------------+---------------------+------------+

投射到时间戳:

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

使用from_unixtime将其转换为时间戳:

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

在 Python 中从浮点数中获取日期时间

这个答案对我有用,实际上它是一个秒计算

import datetime serial = 43822.59722222222 seconds = (serial - 25569) * 86400.0 print(datetime.datetime.utcfromtimestamp(seconds))

将excel时间戳双值转换为日期时间或时间戳

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM