У меня есть фрейм данных с полем даты в формате "MM/dd/yyyy"
в виде строки, и я хочу извлечь в новых полях значение дня недели в Scala. Например, у меня есть кадр данных df
:
df.show()
------------
date
-----------
12/14/2017
12/13/2017
Я хочу получить следующий вывод:
--------------------------------------------
date | day | month | year | DayOfWeek
--------------------------------------------
12/14/2017| 14 | 12 | 2017 | Thursday
12/13/2017| 13 | 12 | 2017 | Wednesday
В настоящее время у меня есть этот код:
df.withColumn("day", dayofmonth(to_date(df("date"),"MM/dd/yyyy")))
.withColumn("month", month(to_date(df("date"),"MM/dd/yyyy")))
.withColumn("year", year(to_date(df("date"),"MM/dd/yyyy")))
.withColumn("dayofweek", something(to_date...)
Я не нашел функцию для извлечения дня недели - как мне это сделать?
Еще вопрос, использование функций dayofmonth
, month
, year
лучший вариант по производительности или есть способ лучше?