重新索引仅对值唯一的Index对象有效



Irun此代码

esg_fm_barron = pd.concat([barron_clean.drop(columns = "10 year return", inplace = False),ESG_fixed.drop(columns = 'Name',inplace = False), financial_clean.drop(columns = 'Name',inplace = False)], axis = 'columns', join = 'inner')
esg_fm_barron.rename(columns={'Average (Current)': "Total ESG Score"}, inplace=True)
esg_fm_barron.head(3)

但是得到了以下错误:重新索引仅对值唯一的Index对象有效有人知道解决办法吗?感谢

运行pd.contat时,每个源DataFrame必须具有唯一的索引。

首先确定哪个源DataFrame具有非唯一索引。对于每个源DataFrame(假设它是df(,运行:

df.index.is_unique

(这是属性,而不是方法,所以不要放括号(。

false结果表示此DataFrame中的索引是非唯一的。然后删除索引值重复的行:

df = df.loc[~df.index.duplicated(keep='first')]

为了不丢失原始数据,也许您应该将结果保存在一个新的临时数据帧,然后用于连接这些临时数据帧。

相关内容

最新更新