我是Pyspark 的新手
我正试图使用下面的代码块将值为Jun 22 2021 1:04PM的字符串转换为时间戳,但它将值设为null,其中显示的数据类型是时间戳
df = df.withColumn("date", F.from_unixtime(F.unix_timestamp("date","MMM d, yyyy hh:mm:ss a"),'yyyy-MM-dd').cast('timestamp'))
您的date
的格式为MMM d yyyy hh:mmaa
转换类似上述格式的字符串。喜欢下面的
from pyspark.sql import functions as f
df.withColumn("date_2", f.from_unixtime(f.unix_timestamp("date", 'MMM d yyyy hh:mmaa'),'MM-dd-yyyy HH:mm:ss')).show()
试试这个:
df=df.withColumn("date", from_unixtime(unix_timestamp(col("date"), "MMM d, yyyy hh:mm:ss a"),"yyyy-MM-dd")).show(false)