如何将Pandas DataFrame索引重置为0到n-1的整数序列?
重置DataFrame索引为0到n-1的正确方法
你试的这几个方法里,后两个完全能生成从0到n-1的连续整数索引,不需要额外操作,下面给你拆解每个写法的作用:
df.reset_index():这个写法会把原索引转为DataFrame的一列(默认列名为index),同时生成0到n-1的新索引,但因为保留了旧索引列,不是最贴合你需求的写法。df.reset_index(drop=True):这是最标准的写法——drop=True参数会直接丢弃原索引,返回一个新的DataFrame,其索引就是从0开始的连续整数序列(0到n-1,n为行数)。df.reset_index(drop=True, inplace=True):和上面的效果完全一致,区别是它直接修改原DataFrame,不会返回新对象,适合不想额外赋值的场景。
验证方法
如果想确认索引是否符合要求,可以执行以下代码:
# 查看当前索引 print(df.index) # 验证是否为0到n-1的连续序列 print(df.index.equals(pd.RangeIndex(0, len(df))))
以你提供的示例数据为例,假设原索引出现了非连续、缺失或自定义值的情况,使用drop=True的两种写法都能快速将索引重置为0到4(因为示例有5行)的连续序列。
内容的提问来源于stack exchange,提问作者Kdoyle73
相关产品推荐
相关产品推荐

