Pandas 如何更改类别数据类型中的代码顺序?

Pandas 如何更改类别数据类型中的代码顺序?,pandas,categorical-data,Pandas,Categorical Data,我正在为客户创建代码,我想知道是否可以修改创建的代码索引的顺序 将熊猫作为pd导入 数据={ “日期”:2018-01-02T11:55:54、“2018-01-02T13:31:52”, “2018-01-02T13:34:38”,“2018-01-02T13:38:30”, “2018-01-02T13:44:06”], ‘客户’:[‘彼得’、‘阿诺德’、‘贝托’、‘彼得’、‘布兰登’] } df=pd.DataFrame(数据) 输出: 与客户约会 0 2018-01-02T11:55:5

我正在为客户创建代码,我想知道是否可以修改创建的代码索引的顺序

将熊猫作为pd导入
数据={
“日期”:2018-01-02T11:55:54、“2018-01-02T13:31:52”,
“2018-01-02T13:34:38”,“2018-01-02T13:38:30”,
“2018-01-02T13:44:06”],
‘客户’:[‘彼得’、‘阿诺德’、‘贝托’、‘彼得’、‘布兰登’]
}
df=pd.DataFrame(数据)
输出:
与客户约会
0 2018-01-02T11:55:54彼得
2018-01-02T13:31:52阿诺德
2018-01-02T13:34:38贝托
3 2018-01-02T13:38:30彼得
4 2018-01-02T13:44:06布兰登
我尝试先按日期对数据集排序,然后创建分类代码索引,但没有成功

df.dates = pd.to_datetime( df.dates )
#sorting df by date:
df.sort_values('dates', inplace = True)


df.clients = pd.Categorical( df.clients )
df['client_code'] = df.clients.cat.codes
我希望结果是按客户注册日期排序的“代码”索引,但事实并非如此

预期成果:

日期客户端\u代码
0 2018-01-02 11:55:54彼得0
2018-01-02 13:31:52阿诺德1
2018-01-02 13:34:38贝托2号
3 2018-01-02 13:38:30彼得0
4 2018-01-02 13:44:06布兰登3
结果:


日期客户端代码
0 2018-01-02 11:55:54彼得后书3
2018-01-02 13:31:52阿诺德0
2018-01-02 13:34:38贝托1号
3 2018-01-02 13:38:30彼得后书3
4 2018-01-02 13:44:06布兰登2号

请提供帮助,感谢您阅读…

您能添加您的预期输出吗?也以数据帧的形式。或者在本例中只是一个列表,因为您需要类别。是否希望
df['client\u code']=pd.factorize(df['clients'])
?我刚刚更新了问题。谢谢你的回答!你完全正确,这就是我所需要的。非常感谢您能添加您的预期输出吗?也以数据帧的形式。或者在本例中只是一个列表,因为您需要类别。是否希望
df['client\u code']=pd.factorize(df['clients'])
?我刚刚更新了问题。谢谢你的回答!你完全正确,这就是我所需要的。非常感谢你