【问题标题】:How to split time into 10 min interval and make it as a separate column using Python如何将时间分成 10 分钟间隔并使用 Python 将其作为单独的列
【发布时间】:2020-06-04 07:24:56
【问题描述】:

我正在研究具有纪元时间的数据集。我想创建一个新列,将时间分成 10 分钟的时间间隔。

假设 时间戳时间块 5:00 1 5:02 1 5:11 2

我如何使用 python 来实现这一点。 我尝试重新采样,但无法进行进一步处理。

【问题讨论】:

  • 向我们展示您尝试过的代码。示例输入、预期输出、当前输出。提供尽可能多的信息。

标签: python resampling


【解决方案1】:

我同意 cmets,您需要提供更多。在猜出您要查找的内容后,您可能需要将区间称为 bin 的直方图。您写了“10 分钟时间间隔”,但您的示例没有显示 10 分钟。

Python 的 Numpy 和 matplotlib 具有时期的直方图。

这是纪元时间直方图上的SO answer

【讨论】:

    【解决方案2】:

    我在这里猜测,但我相信您正在尝试将您的时间数据“合并”成 10 分钟的间隔。 纪元或 Unix 时间表示为以秒为单位的时间(或者现在更常见的是毫秒)。

    您需要做的第一件事是将每个纪元时间转换为分钟。

    假设您有一个 DataFrame 并且您的 epoch 以秒为单位:

    df['min] = df['epoch'] // 60
    

    完成后,您可以使用 pd.cut 对数据进行分箱:

    df['bins'] = pd.cut(df['min'], bins=pd.interval_range(start=df['min'].min()-1, end=df['min'].max(), freq=10))
    

    注意 -1 on start 是将第一个 bin 移动到每 10 分钟间隔的开头。

    您将拥有自己的“垃圾箱”,您可以根据自己的喜好重命名它们,并且可以groupby 它们。

    解决方案可能并不完美,但它可能会让你走上正轨。

    祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-28
      • 1970-01-01
      • 2013-12-26
      • 1970-01-01
      • 1970-01-01
      • 2021-07-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多