gpt4 book ai didi

Python Pandas 工作日范围 bdate_range 不需要 1 分钟的频率吗?

转载 作者:行者123 更新时间:2023-11-28 22:53:31 34 4
gpt4 key购买 nike

我正在尝试使用带有“1min”频率的 bdate_range 来获取所有工作日的分钟数据。

df = pd.bdate_range('20130101 9:30','20130106 16:00',freq='1min')

输出结束于

......
2013-01-05 23:59:00
2013-01-06 00:00:00

In [158]:

注意2013-01-05和2013-01-06是周末,9:30到16:00之间没有时间限制

我认为 freq = '1min' 完全覆盖函数名称 bdate_range 中的 freq = 'B'

我也试过使用 date_range。工作时间为9:30-16:00,但不能排除周末。

谢谢!

最佳答案

你可以这样做

In [28]: rng = pd.date_range('2012-01-01', '2013-01-01', freq="1min")

In [29]: rng
Out[29]:
<class 'pandas.tseries.index.DatetimeIndex'>
[2012-01-01 00:00:00, ..., 2013-01-01 00:00:00]
Length: 527041, Freq: T, Timezone: None

限制我想要的时间

In [30]: x = rng[rng.indexer_between_time('9:30','16:00')]

In [31]: x
Out[31]:
<class 'pandas.tseries.index.DatetimeIndex'>
[2012-01-01 09:30:00, ..., 2012-12-31 16:00:00]
Length: 143106, Freq: None, Timezone: None

只有周一至周五的日子

In [32]: x = x[x.dayofweek<5]

In [33]: x
Out[33]:
<class 'pandas.tseries.index.DatetimeIndex'>
[2012-01-02 09:30:00, ..., 2012-12-31 16:00:00]
Length: 102051, Freq: None, Timezone: None

关于Python Pandas 工作日范围 bdate_range 不需要 1 分钟的频率吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19373759/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com