从字典创建熊猫系列

问题描述 投票:0回答:1

我正在阅读《Python 数据科学手册》来了解 Pandas 库。这本书说,并且还展示了一个示例,当从字典创建系列时,索引默认为排序的字典键。当我在 Jupyter Notebook 中尝试相同的示例甚至不同的示例时,我发现索引未排序。我在这里错过了什么吗?

data = pd.Series({2: 'a', 1: 'b', 3: 'c'})

2    a
1    b
3    c
dtype: object

这是书中的示例:

enter image description here

python pandas dictionary indexing series
1个回答
0
投票

在旧版本的 Pandas 中,您描述的行为确实是默认行为:从字典创建的 Series 的索引将被排序。然而,从 Pandas 1.0.0 版本开始,这种行为发生了变化。现在,当您从字典创建系列时,索引会保留键插入字典的顺序。

要实现书中示例中的排序索引行为,您可以在创建系列后显式对索引进行排序:

import pandas as pd

data = pd.Series({2: 'a', 1: 'b', 3: 'c'})
data = data.sort_index()

print(data)
© www.soinside.com 2019 - 2024. All rights reserved.