gpt4 book ai didi

python - 排序数据框后更新索引

转载 作者:IT老高 更新时间:2023-10-28 21:40:48 24 4
gpt4 key购买 nike

采用以下数据框:

x = np.tile(np.arange(3),3)
y = np.repeat(np.arange(3),3)
df = pd.DataFrame({"x": x, "y": y})
   x  y
0 0 0
1 1 0
2 2 0
3 0 1
4 1 1
5 2 1
6 0 2
7 1 2
8 2 2

我需要先按 x 排序,然后再按 y 排序:

df2 = df.sort(["x", "y"])
   x  y
0 0 0
3 0 1
6 0 2
1 1 0
4 1 1
7 1 2
2 2 0
5 2 1
8 2 2

如何更改索引以使其再次升序。 IE。我怎么得到这个:

   x  y
0 0 0
1 0 1
2 0 2
3 1 0
4 1 1
5 1 2
6 2 0
7 2 1
8 2 2

我尝试了以下方法。不幸的是,它根本不会改变索引:

df2.reindex(np.arange(len(df2.index)))

最佳答案

您可以使用reset_index重置索引取回 0, 1, 2, ..., n-1 的默认索引(并使用 drop=True 表示您要删除现有索引而不是将其添加为附加列到您的数据框):

In [19]: df2 = df2.reset_index(drop=True)

In [20]: df2
Out[20]:
x y
0 0 0
1 0 1
2 0 2
3 1 0
4 1 1
5 1 2
6 2 0
7 2 1
8 2 2

关于python - 排序数据框后更新索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33165734/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com