使用 Pandas 中的数据结构

PythonPythonBeginner
立即练习

This tutorial is from open-source community. Access the source code

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

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 的一项强大功能,它允许进行直观的数据处理和分析。