Python数据分析 Pandas Series对象操作

  • Post category:Python

Python数据分析Pandas是数据分析中经常用到的一个库,它提供了一系列可以快速便捷地完成数据处理、分析和可视化的数据结构和函数。其中,Series对象是一种一维数组,可以存储不同类型的数据,并且每个元素都有自己的标签或索引,下面就详细讲解“Python数据分析 Pandas Series对象操作”的完整攻略。

安装和导入

在开始使用Pandas之前,需要先安装和导入Pandas库。在终端中输入以下命令安装:

pip install pandas

安装后,可以在Python脚本中导入Pandas:

import pandas as pd

创建Series对象

创建Series对象的方法有很多,下面介绍其中的两种:

  • 从列表或numpy数组创建
import pandas as pd
import numpy as np

# 从列表创建
data = [1, 2, 3, 4, 5]
s1 = pd.Series(data)

# 从numpy数组创建
data = np.array([1, 2, 3, 4, 5])
s2 = pd.Series(data)
  • 从字典创建
import pandas as pd

# 从字典创建
data = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}
s3 = pd.Series(data)

Series对象的属性和方法

创建了Series对象后,可以通过一些属性和方法对它进行操作:

  • 属性

    • index:返回索引对象
    • values:返回Series对象的值作为ndarray类型
    • name:返回Series对象的名称
import pandas as pd

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

# 返回索引对象
print(s.index)  # RangeIndex(start=0, stop=5, step=1)

# 返回Series对象的值作为ndarray类型
print(s.values)  # [1 2 3 4 5]

# 返回Series对象的名称
s.name = 'numbers'
print(s.name)  # numbers
  • 方法

    • head(n):返回前n行数据,默认为前5行
    • tail(n):返回后n行数据,默认为后5行
    • describe():返回Series对象的简要描述,包括计数、均值、标准差、最小值、25%、50%、75%分位数、最大值
    • astype(type):将Series对象中的类型转换成type类型
import pandas as pd

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

# 返回前3行数据,默认为前5行
print(s.head(3))

# 返回后3行数据,默认为后5行
print(s.tail(3))

# 返回Series对象的简要描述
print(s.describe())

# 将Series对象中的类型转换成float类型
s = s.astype(float)
print(s.dtypes)

示例说明

下面给出两个示例说明,具体操作和说明见注释部分。

示例1:Series对象与Series对象之间的运算

import pandas as pd

data1 = [1, 2, 3, 4, 5]
data2 = [5, 4, 3, 2, 1]
s1 = pd.Series(data1)
s2 = pd.Series(data2)

# Series对象之间的加法
s3 = s1 + s2
print(s3)

# Series对象之间的乘法
s4 = s1 * s2
print(s4)

输出结果:

0     6
1     6
2     6
3     6
4     6
dtype: int64

0     5
1     8
2     9
3     8
4     5
dtype: int64

示例2:Series对象的布尔运算

import pandas as pd

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

# Series对象的布尔运算
print(s > 2)

输出结果:

0    False
1    False
2     True
3     True
4     True
dtype: bool

此处的布尔运算是对Series对象的每个元素进行的,如果元素大于2,则返回True,否则返回False。