簡體   English   中英

SPDS 4.3 上的集群成員

[英]Clustermembers on SPDS 4.3

我正在處理 SPDS 4.3 上的集群數據集。 我想為每個集群生成一個成員列表。 我找到了兩種可能來獲取我正在尋找的信息。
通過使用 PROC CONTENTS 並查看“集群成員是”字段或使用 PROC SPDO,如下所示:

  PROC SPDO LIBRARY=P30C033;  
    CLUSTER LIST LD_LIQ_CLUS_Customer;  
  QUIT;  

在這兩種情況下,我都以報告的形式獲得信息。 但我想以數據集的形式獲取信息。

我已經在 PROC CONTENTS 上嘗試了 = 和 out2=,但沒有得到所需的輸出。
我還搜索了 PROC SPDO CLUSTER LIST 的選項,但沒有結果。

提前謝謝
麥克風

作為任何 PROC 的通用答案,即使您不能使用 OUT= ,您也可以使用 ODS OUTPUT 來獲取數據集。

添加ODS TRACE ON; 在 proc 運行之前(以及之后的ODS TRACE OFF )。 它應該在日志中為您提供一些結果,告訴您輸出的名稱; 然后您可以使用ODS OUTPUT來獲得結果。

例如,使用 PROC CONTENTS,運行:

ods trace on;
proc contents data=sashelp.class;
run;
ods trace off;

也許您會發現VARIABLES表對您來說很有趣。 所以運行:

ods output Variables=sasvars;
proc contents data=sashelp.class;
run;
ods output close;

當然,如果您已經知道輸出部分的名稱,則不需要ODS TRACE

您可以使用 ODS OUTPUT CLUSTERLIST=,如下面的代碼示例所示:

ods noresults;
ods output clusterlist=WORK.CLUSTER_MEMS;
proc spdo lib=SPDSLIB;
   cluster list CLUSTER1;
   cluster list CLUSTER2;
   /* ... */
   cluster list CLUSTERN;
quit;
ods output close;
ods results;

這允許您將一個或多個集群的成員捕獲到單個數據集中。

您還可以使用 OUT= 選項捕獲集群成員以分隔數據集:

proc spdo lib=SPDSLIB;
   cluster list CLUSTER1 out=CLUSTER1_MEMBERS;
   cluster list CLUSTER2 out=CLUSTER2_MEMBERS;
   /* ... */
   cluster list CLUSTERN out=CLUSTERN_MEMBERS;
quit;

有關此主題的更多信息,請參閱我最近的博客文章如何檢索 SAS® 可擴展性能數據服務器庫的內容

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM