📌  相关文章
📜  如何按日期和时间对 Pandas DataFrame 进行分组?(1)

📅  最后修改于: 2023-12-03 14:53:07.331000             🧑  作者: Mango

如何按日期和时间对 Pandas DataFrame 进行分组?

要按日期和时间对 Pandas DataFrame 进行分组,我们需要在 DataFrame 中添加一个 DateTime 列,并且使用 Pandas 中的 groupby 函数来进行分组。下面是详细的步骤:

步骤一:添加 DateTime 列

首先,我们需要将 DataFrame 中的日期和时间列转换为 Pandas DateTime 类型。代码如下:

import pandas as pd

df = pd.read_csv('data.csv')
df['DateTime'] = pd.to_datetime(df['Date'] + ' ' + df['Time'])

在这个例子中,我们将两个列 DateTime 合并成一个 DateTime 列,并将其添加到 DataFrame 中。下一步是对这个 DataFrame 进行分组。

步骤二:按日期和时间进行分组

有了 DateTime 列后,我们可以使用 Pandas 的 groupby 函数来按日期和时间分组。下面是代码示例:

df_grouped = df.groupby(pd.Grouper(key='DateTime',freq='1D'))

在这个例子中,我们将 DataFrame 按照每一天('1D')的频率进行分组,并将结果保存到一个新的 DataFrame df_grouped 中。这个 DataFrame 中的每一行代表一天的数据,它的索引是 DateTime 类型。

步骤三:对分组后的数据进行操作

一旦分组完成,我们可以对每一组数据进行操作。例如,我们可以计算每一天的平均值:

df_mean = df_grouped.mean()

在这个示例中,我们使用 mean() 函数来计算每一天的平均值,并将结果保存到一个新的 DataFrame df_mean 中。

总结

按照日期和时间对 Pandas DataFrame 进行分组的步骤非常简单:

  1. 添加 DateTime 列
  2. 按照 DateTime 分组
  3. 对分组后的数据进行操作

使用 Pandas 和这些步骤,我们可以轻松地对时间序列数据进行分组和聚合。