Pandas DataFrame 扩展方法

PythonPythonBeginner
立即练习

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

介绍

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

虚拟机提示

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

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

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

导入必要的库

首先,我们需要导入所需的库,即 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() 方法对于探索数据随时间变化的累积和非常有用。