【发布时间】:2016-05-30 13:10:57
【问题描述】:
我可以像这样声明 1 个哈希表:
data DALY1;
* set lengths ;
length Germ $10 Category1 $50 Category2 $50 AgeGroupDALY $10 Gender $2 value 8;
* make link to hash table ;
if _n_=1 then do;
declare hash h1(dataset:'modelData');
h1.definekey ('Germ', 'Category1', 'Category2', 'AgeGroupDALY', 'Gender') ;
h1.definedata('Value');
h1.definedone();
call missing(Germ, Value, Category1, Category2);
end;
run;
但是当我这样声明 2 时:
data DALY1;
* set lengths ;
length Germ $10 Category1 $50 Category2 $50 AgeGroupDALY $10 Gender $2 value 8;
* make link to hash table ;
if _n_=1 then do;
declare hash h1(dataset:'modelData');
h1.definekey ('Germ', 'Category1', 'Category2', 'AgeGroupDALY', 'Gender') ;
h1.definedata('Value');
h1.definedone();
call missing(Germ, Value, Category1, Category2);
declare hash h2(dataset:'states');
h2.definekey ('Germ') ;
h2.definedata('stateList');
h2.definedone();
end;
run;
我明白了:
错误:第 194 行第 3 列的哈希对象未声明数据符号 stateList。
错误:数据步组件对象失败。在执行阶段中止。
我想知道是否可以同时声明 2 个哈希表(或更多,我需要 3 个)。
如果答案还没有,那我做错了什么?
我在任何地方都找不到这样的例子。
谢谢!
【问题讨论】: