Veröffentlicht am :
Makro EXTERNE

Macro AHGdropvar - Löschen von Variablen nach Index

Dieser Code ist auch verfügbar auf: Español Français
Das Makro `AHGdropvar` generiert einen DATA-Schritt, um spezifische Variablen aus einem Datensatz auszuschließen. Der Benutzer gibt die Eingabetabelle (`dsn`) und eine Liste von Indizes (`IDs`) an. Das Makro stützt sich auf externe, hier nicht bereitgestellte Makros (`AHGblank`, `AHGbarename`, `AHGvarlist`, `ahgcount`), um die Liste der Variablen der Tabelle abzurufen und die Indizes den entsprechenden Variablennamen zuzuordnen. Das Ergebnis wird in die Tabelle `out` geschrieben (oder überschreibt den Eingang, wenn `out` leer ist).
Datenanalyse

Type : EXTERNE


Das Makro arbeitet mit einer bestehenden SAS-Tabelle, die als Parameter (`dsn`) übergeben wird.

1 Codeblock
MACRO
Erklärung :
Definition des Makros. Es löst die Namen der zu löschenden Variablen über eine Schleife für die angegebenen Indizes auf und generiert dynamisch einen DATA-Schritt mit der Option `DROP=`.
Kopiert!
1%macro AHGdropvar(dsn,IDs,out=);
2 %IF %AHGblank(&out) %THEN %let out=%AHGbarename(&dsn);
3 %local i count varlist;
4 %AHGvarlist(&dsn,Into=varlist,dlm=%str( ),global=0);
5 %let count=%ahgcount(&ids);
6 DATA &out;
7 SET &dsn(drop=
8 %DO i=1 %to &count;
9 %scan(&varlist,%scan(&IDs,&i))
10 %END;
11 );
12 RUN;
13
14%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.