代码之家  ›  专栏  ›  技术社区  ›  dark horse

Pandas-InvalidIndexError:仅对值唯一的索引对象重新编制索引

  •  0
  • dark horse  · 技术社区  · 7 年前

    df1:

    cust_id,name,count
    1,abc,
    2,def,
    

    df2:

    account,count
    abc,4
    klm,1
    

    我正在尝试生成以下输出(预期输出) :

    cust_id,name,count
    1,abc,4
    

    以下是我到目前为止所得到的 :

    df2_updated = df2.reset_index()
    df1['count'] = df1['cust_id'].map(df2_updated.set_index('name')['count'])
    

    在运行上述操作时,我一直得到下面的错误

    InvalidIndexError: Reindexing only valid with uniquely valued Index objects
    

    在运行下面我发现没有重复。有人能帮忙吗

    df2_updated.index.get_duplicates()
    
    1 回复  |  直到 7 年前
        1
  •  0
  •   Yuca    7 年前

    这应该是有效的:

    result = pd.merge(df1, df2, left_on='name', right_on='account', how='left', sort=False)