Using pandas.date_range() to generate multiple datetimes, two dates per week(使用anda as.date_range()生成多个日期时间,每周两个日期)
本文介绍了使用anda as.date_range()生成多个日期时间,每周两个日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用pd.date_range(start_date, end_date, freq='W-MON')在start_date=2017-01-01和end_date=2017-12-31之间的每个星期一生成每周频率的日期时间,这意味着每月大约生成4个日期时间。如何改为每月生成8个日期时间,即每周生成2个日期时间,但在一周中的不同日期,例如周一和周六或周日以外的任何其他日子?
推荐答案
至少有两种方法可以实现这一点:
1)您可能可以选择与一周中不同日期对应的每周频率,并从中提取union,这将很好地对索引进行排序并将其追加。
start_date = "2017-01-01"
end_date = "2017-12-31"
d1 = pd.date_range(start_date, end_date, freq="W-MON")
d2 = pd.date_range(start_date, end_date, freq="W-TUE")
d1.union(d2)
2)更简单的方法是创建与额外的
Day相对应的偏移量。然后执行相同的union操作。
from pandas.tseries.offsets import Day
d1.union(d1 + Day(1))
两种方法都会产生:
DatetimeIndex(['2017-01-02', '2017-01-03', '2017-01-09', '2017-01-10',
'2017-01-16', '2017-01-17', '2017-01-23', '2017-01-24',
'2017-01-30', '2017-01-31',
...
'2017-11-27', '2017-11-28', '2017-12-04', '2017-12-05',
'2017-12-11', '2017-12-12', '2017-12-18', '2017-12-19',
'2017-12-25', '2017-12-26'],
dtype='datetime64[ns]', length=104, freq=None)
这篇关于使用anda as.date_range()生成多个日期时间,每周两个日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:使用anda as.date_range()生成多个日期时间,每周两个日期
基础教程推荐
猜你喜欢
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
