微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Foundry Code工作簿中将字符串列具有4位数字的年值转换为DATE类型?

如何解决如何在Foundry Code工作簿中将字符串列具有4位数字的年值转换为DATE类型?

是否可以将具有4位数字的年份值的列转换为DATE类型,并使其在Foundry中显示出来?

现在,我正在使用名为year的列,该列包含类似1999,2001,2010的值,其类型为STRING。

当我编写代码将其转换为日期时,它会像2010-01-01那样将4位数字的年份转换为10位数字的年,月和日。

这是我尝试过的一些代码

  1. df = df.withColumn('year_mfr',F.trunc(df.year_mfr,'yyyy'))
  2. df = df.withColumn('year_mfr',F.to_date(df.year_mfr,'yyyy'))

解决方法

spark中的日期类型被定义为10位数字的年月日,因此很遗憾,无法截断它...

https://spark.apache.org/docs/1.5.0/api/java/org/apache/spark/sql/types/DateType.html

一种解决方法是将年份转换为整数。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。