相关疑难解决方法(0)

将pyspark字符串转换为日期格式

我有一个日期pyspark数据帧,其格式为字符串列MM-dd-yyyy,我试图将其转换为日期列.

我试过了:

df.select(to_date(df.STRING_COLUMN).alias('new_date')).show()

我得到一串空值.有人可以帮忙吗?

apache-spark apache-spark-sql pyspark pyspark-sql

56
推荐指数
5
解决办法
12万
查看次数

PySpark数据帧将异常字符串格式转换为Timestamp

我通过Spark 1.5.0使用PySpark.对于datetime值,我在列的行中有一个不常见的String格式.它看起来像这样:

Row[(daytetime='2016_08_21 11_31_08')]
Run Code Online (Sandbox Code Playgroud)

有没有办法将这种非正统yyyy_mm_dd hh_mm_dd格式转换为时间戳?最终可能出现的问题

df = df.withColumn("date_time",df.daytetime.astype('Timestamp'))
Run Code Online (Sandbox Code Playgroud)

我原以为像星火SQL函数regexp_replace可以工作,但我当然需要更换 _-在日期一半_:在部分时间.

我想我可以在2中拆分列,substring并从时间结束后向后计数.然后单独执行'regexp_replace',然后连接.但这似乎很多操作?有没有更简单的方法?

timestamp dataframe apache-spark apache-spark-sql pyspark

23
推荐指数
2
解决办法
3万
查看次数