Das Makro `AHGvar2arr` ermöglicht das Laden des Inhalts einer Datenspalte (`var`) aus einer Tabelle (`dsn`) in globale Makrovariablen, die mit einem Präfix (`arrPre`) und einem Index (z. B. PRE1, PRE2...) benannt sind. Es verwaltet die vorherige Bereinigung über ein externes Makro `%AHGdel`, die Initialisierung globaler Variablen bis zu einer bestimmten Dimension (`dim`) und die dynamische Zuweisung über einen Data Step und `CALL SYMPUT`. Die Gesamtzahl der Elemente wird in einer mit `_n` suffixierten Variablen gespeichert.
Datenanalyse
Type : EXTERNE
Die Datenquelle wird dynamisch durch den Makroparameter `dsn` beim Aufruf definiert.
1 Codeblock
MACRO
Erklärung : Makrodefinition: Deklaration globaler Variablen durch Schleife, dann Ausführung eines Data Steps _NULL_, um die Quelltabelle zu lesen und die entsprechenden Makrovariablen über CALL SYMPUT zu erstellen.
Kopiert!
%macro AHGvar2arr(dsn,var,arrPre,dim=100);
%AHGdel(&arrpre,like=1);
%global &arrPre._n;
%local i;
%do i=1 %to &dim;
%global &arrPRE&i;
%end;
data _null_;
set &dsn end=end;
call symput(strip("&arrpre"||%AHGputn(_n_)),strip(&var));
if end then call symput("&arrPre._n",strip(put(_n_,best.)) );
run;
%mend;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.