Pandas DataFrame 扩展方法

Beginner

介绍

在本实验中,我们将探索 Pandas DataFrame 的 expanding() 方法。此方法是 Pandas 窗口函数的一部分,用于扩展变换。它返回指定操作的窗口对象。

虚拟机提示

虚拟机启动完成后,点击左上角切换到 Notebook 选项卡以访问 Jupyter Notebook 进行练习。

有时,你可能需要等待几秒钟,直到 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。

如果你在学习过程中遇到问题,请随时向 Labby 提问。实验结束后提供反馈,我们将及时为你解决问题。

这是一个实验(Guided Lab),提供逐步指导来帮助你学习和实践。请仔细按照说明完成每个步骤,获得实际操作经验。根据历史数据,这是一个 初级 级别的实验,完成率为 100%。获得了学习者 100% 的好评率。

导入必要的库

首先,我们需要导入所需的库,即 Pandas。我们将使用 pd 作为 Pandas 库的别名。

import pandas as pd

创建 DataFrame

接下来,我们将创建一个 DataFrame 用于操作。在这个例子中,我们将使用包含列 'A' 和 'B' 的 DataFrame。

df = pd.DataFrame({"A": [1, 2, 3], "B": [1, 1, 1]})

应用 expanding 方法计算累积和

现在,让我们应用 expanding() 方法来计算整个 DataFrame 的累积和。

df_expanding_sum = df.expanding().sum()
print(df_expanding_sum)

将结果存储到新列中

我们还可以将 expanding 计算的结果存储到 DataFrame 的新列中。在这个例子中,我们将列 'A' 的累积和存储到新列 'result' 中。

df['result'] = df['A'].expanding().sum()
print(df)

沿行轴计算累积和

此外,我们还可以沿行轴计算整个 DataFrame 的累积和。

df_expanding_sum_row = df.T.expanding().sum().T
print(df_expanding_sum_row)

指定所需的最小观测值数量

我们还可以指定 expanding 计算所需的最小观测值数量,以便生成有效值。这可以通过 min_periods 参数实现。在这个例子中,我们将设置 min_periods=2

df_expanding_sum_min = df.expanding(min_periods=2).sum()
print(df_expanding_sum_min)

总结

在本实验中,我们学习了 Pandas DataFrame 中的 expanding() 方法。我们应用该方法计算了 DataFrame 的累积和,将结果存储到新列中,沿行轴计算累积和,并指定了 expanding 计算所需的最小观测值数量。expanding() 方法对于探索数据随时间变化的累积和非常有用。