Dataframe 错误java.lang.AssertionError:当我显示数据帧(与其他数据帧一起创建)时,断言失败

Dataframe 错误java.lang.AssertionError:当我显示数据帧(与其他数据帧一起创建)时,断言失败,dataframe,join,display,databricks,assertion,Dataframe,Join,Display,Databricks,Assertion,我连接了三个数据帧,一切正常,但当我在最后一个数据帧(连接前三个数据帧)调用“display”方法时,datatrick返回以下错误: java.lang.AssertionError: assertion failed 我正在使用: %fs head dbfs:/databricks-datasets/iot-stream/data-user/ %fs ls dbfs:/databricks-datasets/iot-stream/data-user/ 有人能帮我吗?谢谢 以下是数据帧模

我连接了三个数据帧,一切正常,但当我在最后一个数据帧(连接前三个数据帧)调用“display”方法时,datatrick返回以下错误:

java.lang.AssertionError: assertion failed
我正在使用:

%fs head dbfs:/databricks-datasets/iot-stream/data-user/

%fs ls dbfs:/databricks-datasets/iot-stream/data-user/
有人能帮我吗?谢谢

以下是数据帧模式:

df_MaximasCalorias

  • ID:long(nullable=true)

  • 最大热量:双倍(可空=真)

df_MinCalorias

  • 用户id:long(nullable=true)

  • 最小热量:双倍(可空=真)

df_MediaCarrias

  • 用户id:long(nullable=true)

  • 介质热量:双精度(可空=真)

Dataframe=dfCalorias(加入df_MaximasCalorias和df_MinCalorias)

  • ID:long(nullable=true)

  • 最大热量:双倍(可空=真)

  • 最小热量:双倍(可空=真)

Dataframe=dfCaloriasFinal(加入dfCalorias和df_MediaCalorias)

  • ID:long(nullable=true)

  • 最大热量:双倍(可空=真)

  • 最小热量:双倍(可空=真)

  • 介质热量:双精度(可空=真)
这是完整的代码:

更改列名称 创建联接表达式 第一次加入 显示数据。完美 现在将新数据帧
dfCalorias
df_MediaCalorias
此代码错误
我很感激你提出的详细问题!我敢肯定你的错误是这句话

joinExpression = dfCalorias["ID"] == df_MediaCalorias['user_id'] 
它将
joinExpression
设置为布尔值,因为您将其设置为一个比较。最好在函数本身中写下连接方程

dfCaloriasFinal = dfCalorias.join(df_MediaCalorias, dfCalorias["ID"] == df_MediaCalorias['user_id'], "inner").select("ID","Max_Calorias","Min_Calorias","Media_Calorias")
dfCalorias = df_MaximasCalorias.join(df_MinimasCalorias, joinExpression, "inner").select("ID","Max_Calorias","Min_Calorias") dfCalorias.show()
display(dfCalorias) 
joinExpression = dfCalorias["ID"] == df_MediaCalorias['user_id'] 



dfCaloriasFinal = dfCalorias.join(df_MediaCalorias, joinExpression, "inner").select("ID","Max_Calorias","Min_Calorias","Media_Calorias")
display(dfCaloriasFinal)
joinExpression = dfCalorias["ID"] == df_MediaCalorias['user_id'] 
dfCaloriasFinal = dfCalorias.join(df_MediaCalorias, dfCalorias["ID"] == df_MediaCalorias['user_id'], "inner").select("ID","Max_Calorias","Min_Calorias","Media_Calorias")