如何使用 pyspark 将时间戳转换为 unix 格式
How do I convert timestamp to unix format with pyspark
我有一个带有时间戳值的数据框,如下所示:2018-02-15T11:39:13.000Z
我想使用 Pyspark 以 UNIX 格式获得它。
我尝试了类似 data = datasample.withColumn('timestamp_cast', datasample['timestamp'].cast('date'))
的方法,但我丢失了很多信息,因为当我的源中有毫秒级信息时,我只得到 day/month/year。
结果:2018-02-15
有没有办法获得 unix 格式并保持精度?谢谢!
您可以通过以下方式使用内置 unix_timestamp
:
from pyspark.sql.functions import unix_timestamp
df = df.withColumn('unix', unix_timestamp('timestamp'))
或者
df = df.selectExpr('unix_timestamp(timestamp)')
我有一个带有时间戳值的数据框,如下所示:2018-02-15T11:39:13.000Z 我想使用 Pyspark 以 UNIX 格式获得它。
我尝试了类似 data = datasample.withColumn('timestamp_cast', datasample['timestamp'].cast('date'))
的方法,但我丢失了很多信息,因为当我的源中有毫秒级信息时,我只得到 day/month/year。
结果:2018-02-15
有没有办法获得 unix 格式并保持精度?谢谢!
您可以通过以下方式使用内置 unix_timestamp
:
from pyspark.sql.functions import unix_timestamp
df = df.withColumn('unix', unix_timestamp('timestamp'))
或者
df = df.selectExpr('unix_timestamp(timestamp)')