如何在分类类型上设置索引?

How to set index on categorical type?

鉴于此 Dask DataFrame:

Dask DataFrame Structure:
             date  value           symbol
npartitions=2                                
           object  int64  category[known]
...              ...
...              ...
Dask Name: from-delayed, 6 tasks2130

如何 set_index 在 'symbol' 列(类别[已知)]?

df = df.set_index('symbol')
Traceback (most recent call last):
[...]
TypeError: Categorical is not ordered for operation max
you can use .as_ordered() to change the Categorical to an ordered one

分类对象必须按顺序定义才能被索引。错误消息告诉我们使用 as_ordered()。此方法来自cat结构:

df['symbol'] = df['symbol'].cat.as_ordered()
df = df.set_index('symbol')