【发布时间】:2020-06-04 07:24:56
【问题描述】:
我正在研究具有纪元时间的数据集。我想创建一个新列,将时间分成 10 分钟的时间间隔。
假设 时间戳时间块 5:00 1 5:02 1 5:11 2
我如何使用 python 来实现这一点。 我尝试重新采样,但无法进行进一步处理。
【问题讨论】:
-
向我们展示您尝试过的代码。示例输入、预期输出、当前输出。提供尽可能多的信息。
标签: python resampling
我正在研究具有纪元时间的数据集。我想创建一个新列,将时间分成 10 分钟的时间间隔。
假设 时间戳时间块 5:00 1 5:02 1 5:11 2
我如何使用 python 来实现这一点。 我尝试重新采样,但无法进行进一步处理。
【问题讨论】:
标签: python resampling
我在这里猜测,但我相信您正在尝试将您的时间数据“合并”成 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 它们。
解决方案可能并不完美,但它可能会让你走上正轨。
祝你好运!
【讨论】: