gpt4 book ai didi

apache-spark - 加入 Spark Dataframe 时出现意外失败的断言错误 - 发现重复的重写属性

转载 作者:行者123 更新时间:2023-12-03 20:50:01 24 4
gpt4 key购买 nike

当我运行下面的代码时,我收到错误 java.lang.AssertionError: assertion failed: Found duplicate rewrite attributes 。在更新我们的数据块运行时之前,它运行顺利。

  • top10_df 是列表中具有唯一键的数据的数据框 groups .
  • res_df 是 top10_df 中具有最小和最大日期的唯一键的聚合。
  • 一旦 res_df 被创建并持久化,它就会重新加入到组中唯一键的 top10_df 中。
  • groups = ['col1','col2','col3','col4']
    min_date_created = fn.min('date_created').alias('min_date_created')
    max_date_created = fn.max('date_created').alias('max_date_created')

    res_df = (top10_df
    .groupBy(groups)
    .agg(min_date_created
    ,max_date_created
    )
    )
    res_df.persist()
    print(res_df.count())

    score_rank = fn.row_number().over(w.partitionBy(groups).orderBy(fn.desc('score')))
    unique_issue_id = fn.row_number().over(w.orderBy(groups))

    out_df = (top10_df.alias('t10')
    .join(res_df.alias('res'),groups,'left')
    .where(fn.col('t10.date_created')==fn.col('res.max_date_created'))
    .drop(fn.col('t10.date_created'))
    .drop(fn.col('t10.date_updated'))
    .withColumn('score_rank',score_rank)
    .where(fn.col('score_rank')==1)
    .drop('score_rank'
    ,'latest_revision_complete_hash'
    ,'latest_revision_durable_hash'
    )
    .withColumn('unique_issue_id',unique_issue_id)
    .withColumnRenamed('res.id','resource_id')
    )

    out_df.persist()
    print(out_df.count())

    最佳答案

    代替:

     out_df = (top10_df.alias('t10')
    .join(res_df.alias('res'),groups,'left')
    在加入之后,选择右侧 df 中的所有列并为其添加别名以消除重复属性的歧义:
    out_df = (
    top10_df.alias('t10')
    .join(
    res_df.alias('res').select(
    fn.col('groups').alias('groups'),
    fn.col('min_date_created').alias('min_date_created'),
    fn.col('max_date_created').alias('max_date_created')
    ),
    groups,
    'left'
    )

    关于apache-spark - 加入 Spark Dataframe 时出现意外失败的断言错误 - 发现重复的重写属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63361939/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com