Pandas Series可以定义为能够存储各种数据类型的一维数组。我们可以轻松地将列表、元组和字典转换为使用“series”方法的系列。系列的行标签称为索引。一个系列不能包含多个列。它有以下参数:

  • data: 它可以是任何列表、字典或标量值。
  • index: 索引的值应该是唯一且可哈希的。它必须与数据的长度相同。如果我们不传递任何索引,默认的 np.arrange(n) 将被使用。
  • dtype: 它指的是系列的数据类型。
  • copy: 它用于复制数据。

创建系列:

我们可以通过两种方式创建系列:

1.创建一个空系列

2.使用输入创建系列。

创建一个空系列:

我们可以轻松地在 Pandas 中创建一个空系列,这意味着它将没有任何值。

用于创建空系列的语法:

<series object> = pandas.Series()  

下面的例子创建了一个空系列类型对象,它没有值,且有默认的数据类型,即 float64

示例

import pandas as pd  
x = pd.Series()  
print (x)  

输出

Series([], dtype: float64)

使用输入创建系列:

我们可以使用各种输入创建系列:

  • 数组
  • 字典
  • 标量值

从数组创建系列:

在创建系列之前,首先,我们必须导入 numpy 模块,然后在程序中使用 array() 函数。如果数据是 ndarray,则传递的索引必须与长度相同。

如果我们不传递索引,则默认索引 range(n) 被传递,其中 n 定义了数组的长度,即 [0,1,2,...range(len(array))-1]。

示例

import pandas as pd  
import numpy as np  
info = np.array(['P','a','n','d','a','s'])  
a = pd.Series(info)  
print(a)   

输出

0    P
1    a
2    n
3    d
4    a
5    s
dtype: object

从字典创建系列

我们也可以从字典创建系列。如果作为输入传递了字典对象且未指定索引,则以排序的顺序取字典键来构造索引

如果传递了索引,则从 字典 中提取对应特定标签索引的值。

#import the pandas library   
import pandas as pd  
import numpy as np  
info = {'x' : 0., 'y' : 1., 'z' : 2.}  
a = pd.Series(info)  
print (a)  

输出

x     0.0
y     1.0
z     2.0
dtype: float64

使用标量创建系列:

如果我们使用标量值,则必须提供索引。标量值将重复以匹配索引的长度。

#import pandas library   
import pandas as pd  
import numpy as np  
x = pd.Series(4, index=[0, 1, 2, 3])  
print (x)  

输出

0      4
1      4
2      4
3      4
dtype: int64

通过位置访问系列中的数据:

一旦创建了系列类型对象,你就可以访问其索引、数据,甚至是单个元素。

系列中的数据可以类似于在 ndarray 中那样访问。

import pandas as pd  
x = pd.Series([1,2,3],index = ['a','b','c'])  
#retrieve the first element  
print (x[0])  

输出

1 

系列对象属性

系列属性定义为与系列对象相关的任何信息,例如大小、数据类型等。以下是一些你可以用来获取系列对象信息的属性:

属性描述
Series.index定义系列的索引。
Series.shape它返回数据的形状的元组。
Series.dtype它返回数据的数据类型。
Series.size它返回数据的大小。
Series.empty如果系列对象为空,则返回 True,否则返回 false。
Series.hasnans如果有任何 NaN 值,则返回 True,否则返回 false。
Series.nbytes它返回数据中的字节数。
Series.ndim它返回数据的维数。
Series.itemsize它返回项的数据类型大小。

检索系列对象的索引数组和数据数组

我们可以使用属性 index 和 values 检索现有系列对象的索引数组和数据数组。

import numpy as np   
import pandas as pd   
x=pd.Series(data=[2,4,6,8])   
y=pd.Series(data=[11.2,18.6,22.5], index=['a','b','c'])   
print(x.index)   
print(x.values)   
print(y.index)   
print(y.values)  

输出

RangeIndex(start=0, stop=4, step=1)
[2 4 6 8]
Index(['a', 'b', 'c'], dtype='object')
[11.2 18.6 22.5]

检索类型 (dtype) 和类型大小 (itemsize)

你可以使用属性 dtype 与系列对象一起使用 <objectname> dtype 来检索系列对象单个元素的数据类型,你可以使用 itemsize 属性显示分配给每个数据项的字节数。

import numpy as np   
import pandas as pd   
a=pd.Series(data=[1,2,3,4])   
b=pd.Series(data=[4.9,8.2,5.6],   
index=['x','y','z'])   
print(a.dtype)   
print(a.itemsize)    
print(b.dtype)   
print(b.itemsize)  

输出

int64
8
float64
8

检索形状

系列对象的形状定义了包括缺失或空值(NaN)在内的总元素数。

import numpy as np   
import pandas as pd   
a=pd.Series(data=[1,2,3,4])   
b=pd.Series(data=[4.9,8.2,5.6],index=['x','y','z'])   
print(a.shape)   
print(b.shape)  

输出

(4,)
(3,)

检索维度、大小和字节数:

import numpy as np   
import pandas as pd   
a=pd.Series(data=[1,2,3,4])   
b=pd.Series(data=[4.9,8.2,5.6],  
index=['x','y','z'])   
print(a.ndim, b.ndim)   
print(a.size, b.size)   
print(a.nbytes, b.nbytes)  

输出

1 1
4 3
32 24

检查空性和 NaN 值的存在

要检查系列对象是否为空,你可以使用 empty 属性。类似地,要检查系列对象是否包含一些 NaN 值,你可以使用 hasans 属性。

示例

import numpy as np   
import pandas as pd   
a=pd.Series(data=[1,2,3,np.NaN])   
b=pd.Series(data=[4.9,8.2,5.6],index=['x','y','z'])   
c=pd.Series()   
print(a.empty,b.empty,c.empty)   
print(a.hasnans,b.hasnans,c.hasnans)   
print(len(a),len(b))   
print(a.count( ),b.count( ))  

输出

False   False   True
True    False   False
4   3
3   3

系列函数

以下是一些在系列中使用的函数:

函数描述
Pandas Series.map()将两个系列中具有共同列的值映射。
Pandas Series.std()计算给定一组数字、DataFrame、列和行的标准偏差。
Pandas Series.to_frame()将系列对象转换为 dataframe。
Pandas Series.value_counts()返回一个系列,包含唯一值的计数。

标签: Pandas, Pandas教程, Pandas库, Pandas基础, Pandas学习, Pandas使用, Pandas指南, Pandas入门教程, Pandas模块, Pandas数据库, Pandas实战教程, Pandas用法总结, Pandas文档