首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按特定值排序

问按特定值排序
EN

Stack Overflow用户
提问于 2020-01-20 12:12:29
回答 2查看 48关注 0票数 2

我有一个包含文本及其TFIDF分数的列表:

代码语言:javascript
复制
[['penguji', 117    0.594552 Name: rank, dtype: float64], 
 ['saat', 126    0.263102 Name: rank, dtype: float64], 
 ['melakukan', 92    0.223703 Name: rank, dtype: float64], 
 ['ini', 60    0.772189 Name: rank, dtype: float64], 
 ['kebenaran', 73    0.318094 Name: rank, dtype: float64], 
 ['selain', 136    0.234254 Name: rank, dtype: float64], 
 ['khusus', 76    0.553491 Name: rank, dtype: float64], 
 ['dan', 31    0.782068 Name: rank, dtype: float64],...]

然后我想对分数进行排序,所以我编写了以下代码:

代码语言:javascript
复制
TFIDF_Score.sort()
print('Sorted list:', TFIDF_Score)

结果是被排序的文本,而实际上,预期输出是被排序的分数,如下所示:

代码语言:javascript
复制
[['dan', 31    0.782068 Name: rank, dtype: float64],
 ['ini', 60    0.772189 Name: rank, dtype: float64], 
 ['penguji', 117    0.594552 Name: rank, dtype: float64],
 ['khusus', 76    0.553491 Name: rank, dtype: float64], 
 ['kebenaran', 73    0.318094 Name: rank, dtype: float64], 
 ['saat', 126    0.263102 Name: rank, dtype: float64],
 ['selain', 136    0.234254 Name: rank, dtype: float64], 
 ['melakukan', 92    0.223703 Name: rank, dtype: float64],...] 

我该如何处理循环?不管怎样,谢谢你

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-01-20 12:18:46

假设第二个元素是pandas.Series,将sorted与key一起使用

代码语言:javascript
复制
import pandas as pd

l = [['aaa', pd.Series([0.2])],
     ['bbb', pd.Series([0.1])]]

sorted(l, key=lambda x: x[1].values, reverse=True)

输出:

代码语言:javascript
复制
[['aaa', 0    0.2  dtype: float64], 
 ['bbb', 0    0.1  dtype: float64]]
票数 1
EN

Stack Overflow用户

发布于 2020-01-20 12:18:37

尝试使用sorted

代码语言:javascript
复制
print(sorted(TFIDF_Score, key=lambda x: -x[2]))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59816907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档