共有3种重置索引的方法-reset_index(),就位和将索引手动设置为
df.index = list(range(len(df)))
由于inplace将在熊猫2中被弃用,哪种方法更好-reset_index()或手动设置,为什么?
答案 0 :(得分:1)
分配给索引时,DataFrame中的其余数据不会更改,仅会更改索引。
如果调用reset_index
,它将创建原始DataFrame的副本,修改其索引,然后返回该索引。如果要链接方法调用(df.reset_index().method2().method3()
而不是df.index = ...; df.method2().method3()
),则可能会更喜欢这样做,但是对于较大的DataFrame,这在内存方面会变得效率低下。
从性能方面考虑,直接分配是首选,但是您应该根据情况选择首选。
答案 1 :(得分:0)
有几种方法:
df = df.reset_index(drop=True)
df = df.reset_index(inplace=True) -> returns None
以下解决方案更快:
df.index = pd.RangeIndex(len(df.index))
df.index = range(len(df.index))