【发布时间】:2017-02-22 16:20:54
【问题描述】:
我有 2 列:熊猫数据框中的 Col1、Col2。 Col1 有 1 到 100 的数字,Col2 有 0 和 1。
我想对这个数据框进行排序,使行按 Col1 排序。在我的例子中,我有几百万行,所以 Col1 的值肯定会重复很多次。
我可以使用data = data.sort_values('Col1') 来根据 Col1 对值进行排序。例如,这可以给出:
Col1 Col2 ... OR ... Col1 Col2 ... OR ... Col1 Col2
100 0 100 1 100 0
100 0 100 1 100 0
100 1 100 1 100 0
100 0 100 1 100 0
100 1 100 0 100 1
100 1 100 0 100 1
100 1 100 0 100 1
100 0 100 0 100 1
99 1 99 1 99 1
... ... ...
根据我使用的排序算法(快速排序、归并排序等),当 Col1=100 时,Col2 可能有多种分布。
在我的 Col1 值相同的部分,我希望我的 Col2 的分布是均匀的,就像这样:
Col1 Col2
100 0
100 1
100 0
100 1
100 0
100 1
100 0
100 1
99 1
...
python/numpy/pandas/[任何其他库]有什么排序方法可以做到这一点吗?任何可以做到这一点的算法的想法?
【问题讨论】:
标签: python sorting pandas numpy