python dataframe sort_values_python – dask DataFrame相当于pandas DataFrame sort_values

并行排序很难. Dask.dataframe中有两个选项

set_index

与现在一样,您可以使用单个列索引调用set_index:

In [1]: import pandas as pd

In [2]: import dask.dataframe as dd

In [3]: df = pd.DataFrame({'x': [3, 2, 1], 'y': ['a', 'b', 'c']})

In [4]: ddf = dd.from_pandas(df, npartitions=2)

In [5]: ddf.set_index('x').compute()

Out[5]:

y

x

1 c

2 b

3 a

Unfortunately dask.dataframe does not (as of November 2016) support multi-column indexes

In [6]: ddf.set_index(['x', 'y']).compute()

NotImplementedError: Dask dataframe does not yet support multi-indexes.

You tried to index with this index: ['x', 'y']

Indexes must be single columns only.

nlargest

鉴于你如何措辞你的问题我怀疑这不适用于你,但通常使用排序的情况可以通过更便宜的解决方案nlargest来实现.

In [7]: ddf.x.nlargest(2).compute()

Out[7]:

0 3

1 2

Name: x, dtype: int64

In [8]: ddf.nlargest(2, 'x').compute()

Out[8]:

x y

0 3 a

1 2 b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值