Option 1
Using df.argsort
and df.reindex
df
Review
0 abc
1 foo123
2 b
df = df.reindex((-df.Review.str.len()).argsort()).reset_index(drop=True)
df
Review
0 foo123
1 abc
2 b
Option 2
Similar solution using np.argsort
df = df.reindex(np.argsort(-df.Review.str.len())).reset_index(drop=True)
df
Review
0 foo123
1 abc
2 b
Option 3
Using df.sort_values
and df.iloc
df = df.iloc[(-df.Review.str.len()).argsort()].reset_index(drop=True)
df
Review
0 foo123
1 abc
2 b