D. *_*Rao 2 python sorting dataframe pandas
示例:当前df如下所示:
df=
A B
1 5
2 6
3 8
4 1
Run Code Online (Sandbox Code Playgroud)
我希望得到的df是这样的(B被排序,A保持不变):
df=
A B
1 8
2 6
3 5
4 1
Run Code Online (Sandbox Code Playgroud)
你需要打破一个内部的Pandas安全机制 - aligning by index它负责管理data consistency.因此,分配1D Numpy数组或vanilla Python列表可以解决问题,因为它们都没有索引,因此Pandas无法进行对齐:
df['B'] = df['B'].sort_values(ascending=False).values
Run Code Online (Sandbox Code Playgroud)
要么
df['B'] = df['B'].sort_values(ascending=False).tolist()
Run Code Online (Sandbox Code Playgroud)
两个产量:
In [77]: df
Out[77]:
A B
0 1 8
1 2 6
2 3 5
3 4 1
Run Code Online (Sandbox Code Playgroud)