熊猫排序并保持索引不变
Posted
技术标签:
【中文标题】熊猫排序并保持索引不变【英文标题】:pandas sort and keep index unchanged 【发布时间】:2017-02-13 21:42:19 【问题描述】:我想按列对数据框进行排序,但遇到问题
df = pd.DataFrame(np.random.random(5))
df.sort(columns = [0],inplace = True)
df
0
4 0.275867
1 0.304362
2 0.625837
0 0.741176
3 0.767829
当我对列进行排序时,我得到了我不期望的结果,我预计索引应该仍然是 0,1,2,3,4,那么我怎样才能得到这个结果并保持列 0 升序顺序。
【问题讨论】:
嗯,如果数据排序,索引是变化的。但是你可以通过df.reset_index(drop=True, inplace=True)
重置它
【参考方案1】:
我认为你需要reset_index
和参数drop=True
:
np.random.seed(1)
df = pd.DataFrame(np.random.random(5))
df.sort_values(by=[0],inplace = True)
print (df)
0
2 0.000114
4 0.146756
3 0.302333
0 0.417022
1 0.720324
df.reset_index(drop=True, inplace=True)
print (df)
0
0 0.000114
1 0.146756
2 0.302333
3 0.417022
4 0.720324
【讨论】:
以上是关于熊猫排序并保持索引不变的主要内容,如果未能解决你的问题,请参考以下文章