You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取1993-2019年7、8、9月对应的十进制格式时间数组

实现方法

你可以通过两种方式实现需求,结果完全匹配你给出的示例格式:

方法1:基于已有全量月份数组筛选

你已生成的full_time_months是按每年1-12月顺序排列的一维数组,仅需按年份分组后提取对应月份即可:

# 将一维数组转为[年份数, 12个月]的二维结构
year_month_matrix = full_time_months.reshape(-1, 12)
# 0索引下6、7、8位置对应每年7、8、9月,提取后展平为一维数组
target_time_arr = year_month_matrix[:, [6,7,8]].flatten()

方法2:直接生成目标数组(性能更优)

不需要先生成全量12个月的数据,直接通过广播运算生成7、8、9月的时间数组:

import numpy as np

year_start = 1993
year_end = 2019
# 生成所有年份序列
years = np.arange(year_start, year_end + 1)
# 7、8、9月对应的十进制偏移量(月中位置,和你原生成逻辑一致)
month_offsets = np.array([6.5, 7.5, 8.5]) / 12
# 广播运算后展平得到最终数组
target_time_arr = (years[:, np.newaxis] + month_offsets).flatten()

结果验证

输出结果完全符合你的预期:

# 前三个元素为1993年7、8、9月
[1993.54166667 1993.625      1993.70833333]
# 最后三个元素为2019年7、8、9月
[2019.54166667 2019.625      2019.70833333]

内容的提问来源于stack exchange,提问作者wabash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 20:54:04