如何根据pandas数据框的值对值进行分类?

时间:2013-10-16 10:18:20

标签: python pandas quantile

我有一个数据框,其中包含一个包含实际值的列。

我想有一个额外的列,根据heir大小对这些值进行分类。例如,我想知道一个值是否属于一组最大值的最小值组。我希望这两个组具有相同数量的元素。

例如。如果我有以下值:

[1,2,3,4,40,50]

我想将1,2和3映射到1和4,40和50到2.在数据框中有一种简单的方法。

在上面的例子中,我只使用了两组。但我想保持灵活性。例如,对于三个组,我想将1和2映射到1,3和4到2,40和50到3。

1 个答案:

答案 0 :(得分:2)

import heapq
import random
x = range(100000)
random.shuffle(x)
print(heapq.nlargest(2, x))

给予:[99999,99998]

现在就做点什么:

max_column = heapq.nlargest(len(x)/2, x)

这应该会给你一半的“大”堆,并为小堆做同样的事情。