【发布时间】:2016-10-17 22:45:24
【问题描述】:
如果我有一本记录随机对象计数频率的字典:
dict = {'oranges': 4 , 'apple': 3 , 'banana': 3 , 'pear' :1, 'strawberry' : 1....}
而且我只想要频率在前 25 个百分位的键,我该怎么做?特别是如果它是一个很长的尾列表并且很多记录将具有相同的计数。
【问题讨论】:
-
到目前为止您尝试过什么?你能举一个你想要的输出的例子吗? (这个问题可能模棱两可)
-
我基本上只想要按频率计数落入前 25 个百分位的键。 IE 如果前 25 个百分位截止值是 5 个对象,那么只有具有 5 个或更多对象的键。我尝试计算前 25 个百分位截止值,然后只取 >= 该值的键。但是因为很多键具有相同的值,所以会弄乱该方法。
-
sorted(di.items(), key=lambda t:t[1], reverse=True)然后对占总数 1/4 的项目数进行切片。
标签: python numpy dictionary