簡體   English   中英

Spark數據幀字符串到月

[英]Spark dataframe string to month

我有一個數據orddate ,其中一列orddate作為字符串,我想從orddate提取月份,並在新df上創建一個具有month名稱的新列。

|orddate|
|12/1/10 9:37| 
|20/3/10 10:37| 
|09/8/14 4:56| 
|30/12/11 12:13| 
|24/5/10 7:27|

轉換成

|orddate| month |
|12/1/10 9:37| january|
|20/3/10 10:37| march |
|09/8/14 4:56| august |
|30/12/11 12:13| december |
|24/5/10 7:27| may |

1)使用格式為dd/MM/yy hh:mm unix_timestamp將列轉換為時間戳; 2)使用from_unixtime與格式MMMMM的時間戳轉換為month ;

您可以在此處查看有關格式的更多信息。

import org.apache.spark.sql.functions.{from_unixtime, unix_timestamp}

df.withColumn("month", from_unixtime(unix_timestamp($"orddate", "dd/MM/yy hh:mm"), "MMMMM")).show

+--------------+--------+
|       orddate|   month|
+--------------+--------+
|  12/1/10 9:37| January|
| 20/3/10 10:37|   March|
|  09/8/14 4:56|  August|
|30/12/11 12:13|December|
|  24/5/10 7:27|     May|
+--------------+--------+

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM