当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Pandas Series构造函数用法及代码示例


Pandas Series(~) 构造函数初始化一个新的 Series

参数

1.data | array-likeiterabledictscalar

用于初始化系列的数据。

2. index | 1D array-likeindex | optional

用于系列的索引。索引不必是唯一的,即允许["a","b","a"]

3. dtype | stringnumpy.dtypeExtensionDtype | optional

系列的数据类型。默认情况下,数据类型是从 data 推断的。

4. name | string | optional

分配给系列的名称。

5. copy | boolean | optional

  • 如果 True ,则将返回一个新系列。修改这个系列不会改变原来的data,反之亦然。

  • 如果 False ,则返回的 Series 使用 data 占用的同一块内存。这意味着修改系列会改变原始的data,反之亦然。

copy=False 仅当 data 是 Numpy 数组或其他 Series 时才生效。默认情况下,copy=True

返回值

Series 对象。

例子

使用数组

要使用数组初始化系列:

s = pd.Series([3,4,5])
s



0   3
1   4
2   5
dtype: int64

由于我们没有指定 index ,因此使用默认整数索引 ( [0,1,2] )。

使用字典

要使用Map初始化系列:

my_data = {"A":3, "B":4, "C":5}
s = pd.Series(my_data)
s



A   3
B   4
C   5
dtype: int64

在这里,请注意字典的键如何成为系列的索引。

指定索引

要设置Series的索引,请传入index参数:

s = pd.Series([3,4,5], index=["A","B","C"])
s



A    3
B    4
C    5
dtype: int64

指定数据类型

要在系列上强制执行数据类型:

s = pd.Series(["3","4","5"], dtype="int")
s



0   3
1   4
2   5
dtype: int64

指定名称

要为系列分配名称,请传入 name 参数:

s = pd.Series([3,4,5], name="my_series")
s



0   3
1   4
2   5
Name: my_series, dtype: int64

指定副本

默认情况下, copy=True ,这意味着为构建的 Series 分配一个新的内存块。因此,修改该系列不会改变原始data,反之亦然。

我们可以初始化一个使用 data 占用的相同内存块的 Series,而不是创建 data 的新副本:

s1 = pd.Series([3,4])
s2 = pd.Series(s1, copy=False)
s2



0    3
1    4
dtype: int64

在这里,我们正在初始化系列 s1 中的系列 s2 。关键是这些系列的数据共享相同的内存块,这意味着修改一个系列会改变另一个:

s1[0] = 9
s2



0    9
1    4
dtype: int64

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas | Series constructor。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。