简介
Pandas 是一个用于数据处理和分析的强大 Python 库。其基本数据结构 Series 和 DataFrame 使你能够存储和处理结构化数据。本实验将提供一份关于如何使用这些数据结构的分步指南,从创建到操作和对齐。
虚拟机提示
虚拟机启动完成后,点击左上角切换到“笔记本”标签以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟让 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,随时向 Labby 提问。课程结束后提供反馈,我们将立即为你解决问题。
导入必要的库
在开始之前,让我们导入必要的库。本实验我们将需要 NumPy 和 pandas。
## 导入必要的库
import numpy as np
import pandas as pd
创建一个 Series
我们要了解的第一个数据结构是 Series,它是一个一维带标签数组。它可以容纳任何数据类型,包括整数、字符串、浮点数和 Python 对象。
## 创建一个 Series
s = pd.Series([1, 3, 5, np.nan, 6, 8])
创建一个 DataFrame
另一个基本数据结构是 DataFrame。它是一个二维带标签的数据结构,其列的数据类型可能不同。
## 创建一个 DataFrame
df = pd.DataFrame(np.random.randn(6, 4), columns=list('ABCD'))
操作 DataFrame 的列
你可以对 DataFrame 的列执行各种操作。例如,你可以选择一列、添加新列或删除列。
## 选择列 A
df['A']
## 添加新列 E
df['E'] = pd.Series(np.random.randn(6), index=df.index)
## 删除列 B
del df['B']
数据对齐与算术运算
数据对齐是 pandas 的一项重要特性。当你对两个对象执行操作时,pandas 会根据它们相关联的标签进行对齐。
## 创建两个 DataFrame
df1 = pd.DataFrame(np.random.randn(10, 4), columns=['A', 'B', 'C', 'D'])
df2 = pd.DataFrame(np.random.randn(7, 3), columns=['A', 'B', 'C'])
## 执行加法运算
result = df1 + df2
使用 NumPy 函数
大多数 NumPy 函数都可以直接应用于 Series 和 DataFrame 对象,这为数据处理和分析提供了很大的灵活性。
## 对 DataFrame 应用指数函数
np.exp(df)
总结
在本实验中,我们学习了 pandas 中的两种基本数据结构:Series 和 DataFrame。我们了解了如何创建和操作这些结构,以及如何直接在它们上面使用 NumPy 函数。我们还探讨了数据对齐的概念,这是 pandas 的一项强大功能,它允许进行直观的数据处理和分析。