In [2]:
df
Out[2]:
A B C D
0 5 b 4 4.0
1 3 b 2 NaN
2 4 a 3 2.0
3 1 a 2 3.0
4 2 B 1 1.0

Sort by one column

In [3]:
df.sort_values('A')
Out[3]:
A B C D
3 1 a 2 3.0
4 2 B 1 1.0
1 3 b 2 NaN
2 4 a 3 2.0
0 5 b 4 4.0

Sort by more than one column

In [4]:
df.sort_values(by=['B', 'C'], ascending=[True, False])
Out[4]:
A B C D
4 2 B 1 1.0
2 4 a 3 2.0
3 1 a 2 3.0
0 5 b 4 4.0
1 3 b 2 NaN

Sort by ignoring the index

In [5]:
df.sort_values('A', ignore_index=True)
Out[5]:
A B C D
0 1 a 2 3.0
1 2 B 1 1.0
2 3 b 2 NaN
3 4 a 3 2.0
4 5 b 4 4.0

Sort by using key function

In [6]:
df.sort_values('B', key=lambda x: x.str.lower())
Out[6]:
A B C D
2 4 a 3 2.0
3 1 a 2 3.0
0 5 b 4 4.0
1 3 b 2 NaN
4 2 B 1 1.0