考虑以下
In [214]: df = pd.DataFrame(index=range(4,8), data=[33,22,11,00])
In [215]: df
Out[215]:
0
4 33
5 22
6 11
7 0
我想颠倒第一列的顺序,但保持索引的当前顺序,所以df
看起来像
4 0
5 11
6 22
7 33
我似乎找不到合适的reset_index
,reindex
等来实现这一目标。
答案 0 :(得分:6)
使用iloc
并适当切片
df.iloc[::-1]
0
7 0
6 11
5 22
4 33
为了保留索引
使用iloc
df.iloc[:] = df.iloc[::-1].values
使用numpy
pd.DataFrame(df.values[::-1], df.index, df.columns)
两者都屈服
0
4 33
5 22
6 11
7 0
答案 1 :(得分:0)
您还可以将索引设置为临时变量,然后重新应用索引。
df = pd.DataFrame(index=range(4,8), data=[33,22,11,00])
idx=df.index.values
df.sort_values([0],inplace=True)
df.index=idx
不那么聪明但容易理解