Редактировать: Извинения, образец данных немного отклонен.Ниже приведен пример исправленного образца данных, который я пытаюсь преобразовать:
Timestamp (CST)
12/8/2018 05:23 PM
11/29/2018 10:20 PM
Я попробовал следующий код на основе приведенной ниже рекомендации, но получил нулевые значения.
df = df.withColumn('Timestamp (CST)_2', from_unixtime(unix_timestamp(col(('Timestamp (CST)')), "yyyy/MM/dd hh:mm:ss aa"), "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"))
df = df.withColumn("Timestamp (CST)_3", F.to_timestamp(F.col("Timestamp (CST)_2")))
--------------------------------------------------------------------------------
У меня естьполе с именем «Timestamp (CST)», которое является строкой .Это в центральное стандартное время.
Timestamp (CST)
2018-11-21T5:28:56 PM
2018-11-21T5:29:16 PM
Как создать новый столбец, который принимает «Метку времени (CST)», изменить его на UTC и преобразовать в дату-время с отметкой времени на 24-часовых часах?
Ниже приведена желаемая таблица, и я хотел бы, чтобы тип данных был меткой времени:
Timestamp (CST)_2
2018-11-21T17:28:56.000Z
2018-11-21T17:29:16.000Z
Я попробовал следующий код, но все результаты вернулись к нулю:
df = df.withColumn("Timestamp (CST)_2", to_timestamp("Timestamp (CST)", "yyyy/MM/dd h:mm p"))