如何有效地將 Pyspark 字串列轉換為日期列?
將 Pyspark 字串列轉換為日期格式
使用 Pyspark 時,可能需要將表示日期的字串列轉換為 DateType 欄位。當資料以字串形式攝取時,通常會遇到這種情況。
為了說明這一點,請考慮以下DataFrame,其中包含名為STRING_COLUMN 的字串列,格式為MM-dd-yyyy:
df = spark.createDataFrame([ ("01-01-2023",), ("01-02-2023",), ("01-03-2023",), ], ["STRING_COLUMN"]) df.show()
要將STRING_COLUMN 轉換為DateType 列,一種方法是使用to_date()函數,如原始版本中所建議的嘗試:
df.select(to_date(df.STRING_COLUMN).alias("new_date")).show()
但是,這種方法可能會導致列填入空白值。要解決此問題,請考慮使用以下方法之一:
1. to_timestamp 函數(Spark 2.2 ):
從Spark 2.2 開始,to_timestamp() 函數提供了一種更有效率、更直接的方法將字串轉換為時間戳。它支援使用格式參數指定輸入格式:
df.select(to_timestamp(df.STRING_COLUMN, "MM-dd-yyyy").alias("new_date")).show()
2. unix_timestamp 和from_unixtime 函數(Spark
對於2.2 之前的Spark 版本,可以使用unix_timestamp 和from_unixtime函數的組合:
from pyspark.sql.functions import unix_timestamp, from_unixtime df.select( from_unixtime(unix_timestamp(df.STRING_COLUMN, "MM-dd-yyyy")).alias("new_date") ).show()
在這兩種情況下,可以使用show()方法來顯示轉換後的DateType專欄。
以上是如何有效地將 Pyspark 字串列轉換為日期列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

使用FiddlerEverywhere進行中間人讀取時如何避免被檢測到當你使用FiddlerEverywhere...

如何在10小時內教計算機小白編程基礎?如果你只有10個小時來教計算機小白一些編程知識,你會選擇教些什麼�...

攻克Investing.com的反爬蟲策略許多人嘗試爬取Investing.com(https://cn.investing.com/news/latest-news)的新聞數據時,常常�...

Python3.6環境下加載pickle文件報錯:ModuleNotFoundError:Nomodulenamed...

使用Scapy爬蟲時管道文件無法寫入的原因探討在學習和使用Scapy爬蟲進行數據持久化存儲時,可能會遇到管道文�...
