使用GAMS的gdxxrw命令读写Excel时Cdim和Rdim的意义及设置

使用GAMS的gdxxrw命令可以读写excel数据。见http://blog.csdn.net/cranecloud/article/details/12679587及http://blog.csdn.net/congxn/article/details/6385099

基本命令是:

$call "gdxxrw ..\data\s1.xlsx output=..\data\s1.gdx  par=gdp rng=gdp!A1:F2 dim=1 rdim=0 cdim=1"    



但在读写excel时,要注意Cdim和Rdim的意义(丛晓男文)。由于gams不知道excel数据中的维度,以及哪一行或那一列是集合set,因此必须规定好列和行。这个理解比较抽象,能讲清楚的资料很少,偶尔在gams帮助里找到清晰的说明:http://www.gams.com/help/index.jsp?topic=%2Fgams.doc%2Fuserguides%2Fmccarl%2Frearranging_rows_and_columns.htm

举例说明:

如果excel中的数据如下所示,则cdim=3,rdim=0。(三维数组,即上面3行是集合,第4行是参数值)



如果excel数据如下所示,则cdim=2,rdim=1。(三维数组,上面2行和左边1列是集合,中间为参数值)



你可能感兴趣的:(计算经济学,gams,excel,dim)