当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Pandas DataFrame reset_index方法用法及代码示例


Pandas 的 DataFrame.reset_index(~) 将索引重置为默认整数索引。

参数

1.level | intstringtuplelist | optional

要重置的级别。仅当您的 DataFrame 是多索引时,这才有意义。默认情况下,level=None

2. drop | boolean | optional

  • 如果是 True ,则当前索引将不会添加到 DataFrame 中。

  • 如果 False ,则当前索引将添加到 DataFrame 中。

默认情况下,drop=False

3. inplace | boolean | optional

  • 如果是True,则直接修改源DataFrame。

  • 如果False,则将返回新的DataFrame。

默认情况下,inplace=False

4. col_level | intstring | optional

放置重置索引的列级别。仅当 DataFrame 具有多索引列时这才相关。默认情况下,col_level=None

5. col_fill | scalar | optional

分配给同一层次结构中其他列级别的名称。仅当 DataFrame 具有多索引列时这才相关。默认情况下,col_fill=""

返回值

索引重置为默认整数索引的 DataFrame

例子

考虑以下 DataFrame :

df = pd.DataFrame({"A":[3,4], "B":[5,6]}, index=["a","b"])
df



   A  B
a  3  5
b  4  6

重置索引

Single-index DataFrames

重置 df 的索引:

df.reset_index()



   index  A  B
0    a    3  5
1    b    4  6

请注意以下事项:

  • 默认整数索引 ( [0,1] ) 是新索引

  • 新列的标签是"index"

多索引DataFrames

考虑以下多索引 DataFrame:

index = [("A", "alice"), ("A", "bob"),("A", "cathy"), ("B", "david"),("B", "eric")]
multi_index = pd.MultiIndex.from_tuples(index)
df = pd.DataFrame({"a":[2,3,4,5,6]}, index=multi_index)
df



            a
A   alice   2
    bob     3
    cathy   4
B   david   5
    eric    6

默认情况下, level=None ,这意味着所有级别都将被重置:

df.reset_index()



   level_0  level_1   a
0    A      alice     2
1    A      bob       3
2    A      cathy     4
3    B      david     5
4    B      eric      6

请注意新列如何标记为 level_0level_1

要重置特定级别,请传入 level,如下所示:

df.reset_index(level=0)



        level_0  a
alice     A      2
bob       A      3
cathy     A      4
david     B      5
eric      B      6

删除索引

考虑以下 DataFrame :

df



   A  B
a  3  5
b  4  6

默认行为是将索引作为列添加到 DataFrame 之前。为了防止这种情况,请设置drop=True

df.reset_index(drop=True)



   A  B
0  3  5
1  4  6

请注意如何没有将新列添加到 DataFrame 中。

就地重置索引

要就地重置索引,请设置 inplace=True

df.reset_index(inplace=True)
df



   index  A  B
0    a    3  5
1    b    4  6

请注意原始df 是如何直接修改的。

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas DataFrame | reset_index method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。