【问题标题】:Segregate stock data given in 1 minute intervals to 5 minute intervals given in format hour:min:second将以 1 分钟间隔给出的股票数据分隔到 5 分钟间隔给出的格式小时:分钟:秒
【发布时间】:2021-06-16 19:02:10
【问题描述】:

我想将以 1 分钟间隔给出的股票数据的时间间隔更改为以小时:分钟:秒格式给出的 5 分钟间隔。我正在使用 pandas 数据框从 excel 表中加载 pandas 中的价格。

【问题讨论】:

  • 那么只取 5 分钟的值,还是您想要平均间隔时间?
  • @SolarMike 第一个打开,最后一个关闭,中间所有区间的最大值为高,所有区间的最小值为低。

标签: python excel dataframe stock


【解决方案1】:

在不知道您的数据框或预期输出的情况下,很难确切知道您在寻找什么,但您可能可以这样做:

import datetime as dt

import numpy as np
import pandas as pd

# Generate data by minute for 10 hours
df = pd.DataFrame({'Time': pd.date_range("11:00", "21:00", freq="1min")})
df['Price'] = np.round(np.random.random(df.shape[0]) * 100,2)

# Filter the price by minutes divisible by 5
df.loc[df.Time.dt.minute % 5 == 0]

输出:


    Time                Price
0   2021-06-16 11:00:00 43.84
5   2021-06-16 11:05:00 87.17
10  2021-06-16 11:10:00 52.89
15  2021-06-16 11:15:00 60.25
20  2021-06-16 11:20:00 92.36
... ... ...
610 2021-06-16 21:10:00 28.15
615 2021-06-16 21:15:00 60.86
620 2021-06-16 21:20:00 15.95
625 2021-06-16 21:25:00 4.17
630 2021-06-16 21:30:00 0.68

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-01
    • 2011-03-28
    • 1970-01-01
    • 2020-07-30
    • 2019-09-28
    • 2022-01-25
    • 1970-01-01
    相关资源
    最近更新 更多