Pandas.Series就像一个固定大小的字典:它是什么意思

时间:2015-10-22 03:12:28

标签: python pandas

pandas.Series上阅读pandas doc时,它会说明

  

系列就像一个固定大小的字典,你可以通过索引标签来获取和设置值:

http://pandas.pydata.org/pandas-docs/version/0.13.1/dsintro.html#series-is-dict-like

问题: pandas.Series是fixed-size dict是什么意思,如果它不像固定大小的字典,它能做什么?

1 个答案:

答案 0 :(得分:2)

与固定大小的字典一样,您可以有效地获取和设置(现有)密钥。

你不能(有效地)做的是添加一个元素。虽然你可以做到:

In [11]: s
Out[11]:
a    -1.344
b     0.845
c     1.076
d    -0.109
e    12.000
dtype: float64

In [12]: s["f"] = 3.14  # works but slow (copies all the data)

In [13]: s
Out[13]:
a    -1.344
b     0.845
c     1.076
d    -0.109
e    12.000
f     3.140
dtype: float64

因为这会创建一个新系列(即通过创建旧系列)。

什么系列(和一般numpy和pandas对象允许有效的聚合,例如sums和groupby操作。使用python dict类似聚合的地方会非常慢。

一个手动波形的原因是它主要是由于数据可以存储在内存中的方式(连续和已知类型)而不是python对象,无论它们是指向指针的指针。数据的类型和指针(这种误导意味着事情变慢)......

Pandas还附带了许多高效编写的函数和一个简洁的API,因此您不必重写自己需要的所有功能......