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

如何基于Year与isoweek列生成完整日期列(Julia语言)

通过Year和ISO周生成日期列的Julia实现

不需要额外安装第三方包,使用Julia自带的Dates包(你已经导入)即可完成需求。从你指定的第一行结果2023-07-30来看,需要生成的是对应ISO周的周日(ISO周以周一为每周起始日,周日为当周第7天)。

完整代码示例

using DataFrames, Dates

aa = DataFrame(Year = [2023,2023,2023], isoweek = [31,32,33])

# 生成目标日期列
aa.date = Date.(aa.Year, 1, 1) .+ (aa.isoweek .- 1) .* Week(1) .+ Day(6)

代码说明

  • Date.(aa.Year, 1, 1):批量生成对应年份的1月1日日期对象
  • (aa.isoweek .- 1) .* Week(1):计算从ISO周1开始的偏移周数(ISO周1定义为包含当年1月4日的周,用1月1日作为基准点偏移即可对齐)
  • + Day(6):ISO周的第一天是周一,加6天即可得到当周的周日,正好匹配你要求的2023-07-30(2023年ISO周31的周日)

结果验证

运行代码后,aa.date列的结果为:

3-element Vector{Date}:
 2023-07-30
 2023-08-06
 2023-08-13

如果需要生成每周的其他日期(比如周一),只需将Day(6)替换为Day(0)即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 19:57:12