代码之家  ›  专栏  ›  技术社区  ›  Uddhav Savani

Spark Left Join即使在选择时使用数据帧名称,也会给出歧义列名的错误

  •  0
  • Uddhav Savani  · 技术社区  · 2 年前
    sender_df = user_df.join(sender_df, user_df.contactno == sender_df.senderno, how='left')
    

    sender_df=[contactno:string,senderno:string、time:time,reciveno:sstring,type:int] user_df=[联系人编号:字符串,fname:字符串,lname:字符串、地址:字符串]

    考虑以上数据帧。发送方和用户都有contactno字段。现在,当我使用上面提到的字段离开并加入它们时,它给了我ambigues列contactno错误。但我没有选择任何字段,在加入条件下,我也提到了dataframe.field。仍然面临这个问题。在用户和发送方df上,在加入之前都应用了一些转换。

    需要帮助来了解引擎盖下发生了什么,以及我为什么面临这个问题。

    0 回复  |  直到 2 年前
        1
  •  0
  •   user2704177    2 年前

    我认为当您有两个名为contactno的列时,稍后会出现错误。这可能吗?您可以重命名其中一个,因为不可能进一步处理两列具有相同名称的数据帧。

    推荐文章