我有一个多级pandas数据框,我试图进行水平调整。我使用reset_index,但它给出了我已经存在名称的错误。
我不想使用reset_index(drop=True)
因为我想保留其中一个列名。
我想要作为我的新数据框:
国,listing_neighborhood,计数
现在,
df.columns
仅提供count
。
我的代码:
df.columns = ['count']
df.reset_index() -> gives error that `ValueError: cannot insert country, already exists`
我也尝试过:
df.columns.droplevel(0)
- >给出'Index' object has no attribute 'droplevel'
答案 0 :(得分:6)
您需要删除第一个重复级别:
df = df.reset_index(level=0, drop=True).reset_index()
或者:
df.index = df.index.droplevel(0)
df = df.reset_index()
答案 1 :(得分:0)
您可以更改现有名称,以使其不再重复:
df.reset_index(name =“ new_name”)
希望获得帮助