Slo*_*rop 2 python sorting string dataframe pandas
使用Python。我有一个包含三列的数据框:
Author | Title | Reviews
Run Code Online (Sandbox Code Playgroud)
我想按“评论”列中字符串的长度排序。
如果我做
df.sort_values('Review', ascending = False)
Run Code Online (Sandbox Code Playgroud)
它以字母'开头,按字母顺序排序z
。
如何获取“评论”列中字符串的长度排序?
我认为您需要len
分配给索引的长度,sort_index
最后reset_index
:
df = pd.DataFrame({'Author':list('abcdef'),
'Title ':list('abcdef'),
'Review':['aa', 'aasdd', 'dwd','dswee dass', 'a', 'sds']})
print (df)
Author Review Title
0 a aa a
1 b aasdd b
2 c dwd c
3 d dswee dass d
4 e a e
5 f sds f
df.index = df['Review'].str.len()
df = df.sort_index(ascending=False).reset_index(drop=True)
print (df)
Author Review Title
0 d dswee dass d
1 b aasdd b
2 c dwd c
3 f sds f
4 a aa a
5 e a e
Run Code Online (Sandbox Code Playgroud)