read_gdx fails for repeated domain names
@jd-foster がすでに取り組んでいます。
2026年9月29日 から。
評価
調査の方向性
Start with the read_gdx entry point and run the minimal reproducer from the issue, which creates a GDXParameter with domains COMM, REG, REG. Done means repeated domains can be represented in the record table with names such as REG and REG_2 while the GDX symbol retains the original domain metadata ["COMM", "REG", "REG"].
索引モデルが issue の本文から書いたものです。
説明
read_gdx fails on a parameter with domains (COMM, REG, REG):
duplicate field name in NamedTuple: "REG" is not unique
GTAP’s GDX core-data documentation defines bilateral trade as VXSB(COMM, REG, REG): Chapter 6: The GTAP Data Base for GAMS Users.
The attached minimal reproducer creates such a GDX file:
using GDXInterface
path = tempname() * ".gdx"
try
regions = GDXSet("REG", "", ["*"], (; dim1 = ["R1", "R2"]))
commodities = GDXSet("COMM", "", ["*"], (; dim1 = ["G1"]))
trade = GDXParameter(
"VXSB",
"",
["COMM", "REG", "REG"],
(
COMM = ["G1"],
ORIGIN = ["R1"],
DESTINATION = ["R2"],
value = [1.0],
),
)
gdx = GDXFile(
path,
Dict{Symbol, GDXSymbol}(
:REG => regions,
:COMM => commodities,
:VXSB => trade,
),
)
write_gdx(path, gdx)
read_gdx(path)
finally
rm(path; force = true)
end
Could read_gdx disambiguate repeated domain names when constructing record tables, such as COMM, REG, and REG_2, while preserving the original domain metadata ["COMM", "REG", "REG"] on the GDX symbol?
- 主要言語
- Julia
- スター
- 9
- フォーク
- 4
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
jump-dev/GDXInterface.jl のほかの issue
-
難易度 5/5 1週間以上 初心者へのやさしさ 38/100
jump-dev/GDXInterface.jl#7 · コメント 2 件 · リアクション 1 件 ·
jump-dev/GDXInterface.jl の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
legend-exp/LegendDataManagement.jl#232 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
EnzymeAD/Reactant.jl#3569 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 67/100
astroautomata/SymbolicRegression.jl#783 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 90/100
メンテナーはふだん 1 日以内に返信