我正在尝试将dataframe month number列转换为相应的month name列。我尝试了以下方法-
df_month_name = df.withColumn('month_name',calendar.month_abbr['MONTH_NUMBER'])
我有个错误:
AttributeError: 'function' object has no attribute 'month_abbr'
如果还有更好的办法,请告诉我。谢谢!
我正在尝试将dataframe month number列转换为相应的month name列。我尝试了以下方法-
df_month_name = df.withColumn('month_name',calendar.month_abbr['MONTH_NUMBER'])
我有个错误:
AttributeError: 'function' object has no attribute 'month_abbr'
如果还有更好的办法,请告诉我。谢谢!
2条答案
按热度按时间3hvapo4f1#
你可以用
to_date
要将月份转换为日期,请使用date_format
要获取月份名称:请注意,对于spark 3,需要设置
spark.conf.set("spark.sql.legacy.timeParserPolicy", "LEGACY")
将月数转换为日期。也可以使用保存Map的Map列
month_number -> month_abbr
:使用自定义项的另一种方法:
n1bvdmb62#
如果有人想在scala中执行此操作,可以按以下方式执行:
您可以看到如下输出: