在pyspark中连接两个数据帧的结果是“检测到的隐式笛卡尔积”

2024-09-27 19:30:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我采取了以下行动:

  1. 作为spark数据帧加载到json中
  2. 已分析此数据帧的(5)列中的数据
  3. 对从这5列中提取的数据应用了一个函数(按百分位数将连续值分为10个分位数,但我不认为这件事的细节)
  4. 使用创建了一个新的数据帧spark.createDataFrame,包含所有这些具有5个完全不同列名的新值
  5. 尝试将原始dataframe与新dataframe完全外部联接。在

因为合成数据帧中的所有列的名称与原始数据帧中的列的名称不同,所以外部联接应该与沿着列轴将两个数据帧连接起来一样。在

但是,我收到了以下错误:

AnalysisException: u'Detected implicit cartesian product for FULL OUTER join between logical plans\nUnion\n:- Project\n:

我如何解决这个问题?我只想按列连接数据帧,如https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.concat.html


Tags: 数据函数名称jsondataframepandas原始数据细节

热门问题