Конвертировать метку времени строки в Pyspark - PullRequest
0 голосов
/ 16 июня 2019

У меня есть столбец метки времени в виде строки.Я хотел бы преобразовать их в дату в формате "гггг-ММ-дд"

+-------------------+                                                           
|           date_col|
+-------------------+
|2019-01-01 08:01:45|
|2019-01-02 17:17:25|
|2019-01-03 15:01:45|
+-------------------+

Я хочу '2019-01-01', '2019-01-02', '2019-01-03в качестве выходных данных

1 Ответ

0 голосов
/ 16 июня 2019

Использовать Substring и to_date:

from pyspark.sql import Row
from pyspark.sql.functions import to_date, substring, col
df = sc.parallelize([Row(date_col="2019-01-01 08:01:45"),Row(date_col="2019-01-02 17:17:25"),Row(date_col="2019-01-03 15:01:45")]).toDF()

df = df.withColumn("new_date", to_date(substring(col("date_col"),0,10), "yyyy-MM-dd"))

df.show()
+-------------------+----------+
|           date_col|  new_date|
+-------------------+----------+
|2019-01-01 08:01:45|2019-01-01|
|2019-01-02 17:17:25|2019-01-02|
|2019-01-03 15:01:45|2019-01-03|
+-------------------+----------+
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...