gpt4 book ai didi

python - 如何根据特定顺序对 pandas 列进行排序?

转载 作者:行者123 更新时间:2023-12-01 00:54:04 24 4
gpt4 key购买 nike

我有一个看起来像这样的 df:

index  life_stage
1 Early Childhood
2 Birth
3 Infancy
...

life_stage 列的排序不正确,我不能依赖字母顺序。

正确的顺序是

Birth
Infancy
Early Childhood

是否可以根据我在 Pandas 中指定的顺序对生命阶段列进行排序?

最佳答案

让我们使用 pd.Categorical 将“life_stage”转换为有序分类列:

df['life_stage'] = pd.Categorical(
df['life_stage'],
categories=['Birth', 'Infancy', 'Early Childhood'],
ordered=True
)

请注意我为 pd.Categorical 指定类别的顺序。现在,使用 life_stage 调用 sort_values:

df.sort_values(by=['life_stage'])

index life_stage
2 1 Birth
1 2 Infancy
0 3 Early Childhood
<小时/>

仅供引用,按字母顺序对“life_stage”进行排序即可

   index       life_stage
2 1 Birth
0 3 Early Childhood # wrong!
1 2 Infancy

关于python - 如何根据特定顺序对 pandas 列进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56352195/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com