AWS Glue中DataFrame左连接报错:'DataFrame'对象无'Join'属性求解决
问题解决方法
错误原因及修复步骤
- 大小写错误:Spark DataFrame的连接方法是小写的
join(),不是大写的Join(),Python对大小写敏感,这是触发报错的直接原因。 - DataFrame被覆盖为None:代码中
user = user.select("*", lower(col('OPRID'))).show()这一行,show()方法返回值为None,会把原本的DataFrame覆盖成None,后续连接会引发新错误,需将show()单独拆分执行。
修正后的完整代码
# Script generated for node Join DropNullFields = DropNullFields.toDF() user = user.toDF() # 将show()单独拆分,避免覆盖DataFrame user = user.select("*", lower(col('OPRID'))) user.show() # 单独打印查看数据,不影响DataFrame本身 left_join = DynamicFrame.fromDF( DropNullFields.join( # 改为小写的join() user, DropNullFields["erp"] == user["fin_erp_id"], "left" ), glueContext, "left_join", )
内容的提问来源于stack exchange,提问作者Sơn Ngô
相关产品推荐
相关产品推荐

