Sas 如何使用Do循环在工作文件夹中设置多个数据集?

Sas 如何使用Do循环在工作文件夹中设置多个数据集?,sas,datastep,Sas,Datastep,我在我的工作文件夹中以以下格式创建了100个具有不同地区名称的个人人口统计信息数据集” 每个单独的数据集(如上面的数据集)都有一个地区名称 我想要的是将所有这些单独的Disct数据集合并成一个综合数据集 *我考虑过使用规则集语句,例如 data districtscompiled; set Aberdeen and *99 other districts in the work folder; run; 然而,我的问题是,有没有比在set语句下键入每个单独数据集的名称更

我在我的工作文件夹中以以下格式创建了100个具有不同地区名称的个人人口统计信息数据集”

每个单独的数据集(如上面的数据集)都有一个地区名称

我想要的是将所有这些单独的Disct数据集合并成一个综合数据集

*我考虑过使用规则集语句,例如

    data districtscompiled;
    set Aberdeen and *99 other districts in the work folder;
    run;

然而,我的问题是,有没有比在set语句下键入每个单独数据集的名称更好的方法?例如,我可以在set语句中执行循环吗?

我会说实现命名约定,特别是为每个数据集添加前缀。它可以像“DISTRICTNAME”或“DIST\u Aberdeen”这样简单,然后,您可以使用冒号运算符或-data set列表选项,使用快捷符号一次性设置它们

data combined;
 set dist_: ; *note the colon here!;
run;
如果使用数字列表,可以执行以下操作:

data want;
 set district1 - district99; *you need to know the number of districts in this method;
run;

我要说的是,实现命名约定,特别是为每个数据集添加前缀。它可以像“DISTRICTNAME”或“DIST\u Aberdeen,DIST\u Banff”这样简单。然后,您可以使用冒号运算符或-data set列表选项,使用简写符号一次性设置它们

data combined;
 set dist_: ; *note the colon here!;
run;
如果使用数字列表,可以执行以下操作:

data want;
 set district1 - district99; *you need to know the number of districts in this method;
run;

你为什么要首先拆分它们,糟糕的设计?除了地区名称之外,你还有命名约定吗?你能实现一个吗?如果没有,库中的所有数据集是合并的还是只有几个?如果只有几个,它们是如何区分的?我实际上可以实现一个命名约定,使每个地区数据集l还有一个地区编号。例如districtname_1。图书馆中的所有数据集都必须合并,因为它们代表来自同一个省的所有地区。为什么你首先将它们拆分,糟糕的设计?除了地区名称之外,你还有命名约定吗?你能实现一个吗?如果没有,图书馆中的所有数据集都是g吗要合并还是只有几个?如果只有几个如何区分?我实际上可以实施命名约定,这样每个地区数据集也将有一个地区编号。例如districtname_1。图书馆中的所有数据集都必须合并,因为它们代表一个省的所有地区