2015-11-04 220 views
1

我需要訪問一個名爲all_ci,all_pd,all_vs等一些sas數據集的目錄。ci將是'care info',pd將是'patient data',vs將是'重要的統計數據'。我在讀它們的方式:SAS導入多個數據集以將數據集名稱保存爲變量

data ci_all; 
set DIRECTORY.all:; run; 

我得到一個表,看起來像這樣:

No. 
16 
25 
20 

此作品只設置所有的一切開始集。問題是,我需要的輸出,看起來像這樣:

Category   No. 
Patient Data  16 
Vital Statistics 25 
Care Info   20 

由於原ALL_數據集沒有類別標籤,我必須手動計數,其中責令ALL_數據集閱讀,然後貼上標籤。我想知道是否有一種方法可以保存正在讀入的數據集的名稱,這樣我可以更輕鬆地將它們標記在行中。

回答

3

在SET語句中使用INDSNAME選項。您需要將值複製到新變量,因爲數據集選項中引用的變量會自動刪除。

libname DIRECT 'mydirectory' ; 
data ci_all; 
    lenght dsname indsname $41 ; 
    set DIRECT.all: indsname=indsname; 
    dsname=indsname; 
run; 
+0

正是我在找的東西,這節省了我很多時間。 – PinkyL

+0

可能要注意的版本它適用於(9.3+)。 – Joe