使用 pandas 2.2.2 和 python 3.11,为什么这没有给我包含结束日期的日期范围:
import pandas as pd
start_date = pd.to_datetime('2023-04-05T04:01:40Z')
end_date = pd.to_datetime('2024-04-15T00:00:00Z')
full_date_range = pd.date_range(start=start_date, end=end_date, freq='1M', inclusive='both')
for date in full_date_range.to_list():
print(date)
它给了我:
2023-04-30 04:01:40+00:00
2023-05-31 04:01:40+00:00
2023-06-30 04:01:40+00:00
2023-07-31 04:01:40+00:00
2023-08-31 04:01:40+00:00
2023-09-30 04:01:40+00:00
2023-10-31 04:01:40+00:00
2023-11-30 04:01:40+00:00
2023-12-31 04:01:40+00:00
2024-01-31 04:01:40+00:00
2024-02-29 04:01:40+00:00
2024-03-31 04:01:40+00:00
它在三月底停止。我认为包容性会给我一个额外的条目
2024-04-30 04:01:40+00:00
include
论点)
它按预期工作。
include
仅指定是否包含左、右、两者或不包含任何间隔边界。您的预计日期 2024-04-30
不在区间 (2023-04-05; 2024-04-15)
内,因此最后日期为 2024-03-31
。您必须将 end_date
更改为之后的日期才能获得您想要的内容。
在这种情况下,freq
并不重要,因为2024-03-31
+1M 超出了区间。