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

Julia IndexedTables的ndsparse如何定义待填充的未初始化空列

NDSparse表初始化解决方案

你可以按照如下方式定义两个待填充列,同时修正索引维度的定义问题:

using Pkg
Pkg.add("IndexedTables")
using IndexedTables

start_period = 1        # 首个待统计周期编号
num_agents = 100        # 待模拟的个体数量

periods = [start_period, start_period + 3]
# 计算总数据行数:个体数*周期数
total_rows = num_agents * length(periods)

df = ndsparse(
    # 索引列:1~100的个体ID和两个周期的笛卡尔积
    (Identifier = 1:num_agents, Period = periods),
    (
        # state列:每个元素为独立的可变长度整数数组,初始为空
        state = [Int[] for _ in 1:total_rows],
        # action列:整数类型,初始默认值设为0,需要支持缺失可替换为fill(missing, total_rows)
        action = zeros(Int, total_rows)
    )
)
print(df)

关键说明

  • 原代码中Identifier = [1, num_agents]仅包含两个索引值,修改为1:num_agents生成1到100的连续个体编号,匹配100个个体的模拟需求
  • state列使用列表推导式生成独立的空整数数组,避免用fill(Int[], total_rows)导致所有元素引用同一个数组的问题
  • action列如果需要标记未填充状态,可将初始化值替换为fill(missing, total_rows),列类型会自动适配为Union{Int, Missing}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 07:12:07