使用pyspark创建时间戳列

5vf7fwbs  于 2023-04-19  发布在  Spark
关注(0)|答案(1)|浏览(117)

我喜欢使用日期列和字符串列在DataFrame上创建新的时间戳列
| 日期|时间(刺痛)|所需列|
| --------------|--------------|--------------|
| 2020-11-03 2020-11-03 2020-11-03|十五时三十四分零二秒|2020-11-03 15:34:02|
我在select语句中尝试类似的东西,但我有一个错误。有人可以帮助吗?

F.to_timestamp(F.concat_ws('', F.col("Date"), F.col("Time"), 'yyyy-MM-dd HH:mm:ss')).alias("desired_column")
gblwokeq

gblwokeq1#

你可以简单地使用pyspark functions来做这样的事情:

import pyspark
from pyspark.sql import functions as sf

sc = pyspark.SparkContext()
sqlc = pyspark.SQLContext(sc)

# note this i used to create the data frame
df = sqlc.createDataFrame([('2020-11-03','15:34:02')], ['Date', 'Times (Sting)'])

print(df.show())

df = df.withColumn('desired column',sf.concat(sf.col('Date'),sf.lit(' '), sf.col('Times (Sting)')))

print(df.show())

输出:

相关问题