Veröffentlicht am :
Makro CREATION_INTERNE

Macro AHGaddordvar - Erstellung einer Sortiervariablen

Dieser Code ist auch verfügbar auf: English Español Français
Dieses Makro ist dafür konzipiert, innerhalb eines DATA Steps aufgerufen zu werden. Es analysiert eine Quellvariable (`var`), um das Vorhandensein von Ziffern zu erkennen. Wenn Ziffern vorhanden sind, erstellt es eine Sortiervariable (`ordVar`), indem es die numerischen Segmente (wahrscheinlich durch Punkte getrennt) normalisiert. Es verwendet eine Makro-Schleife, um `tranwrd`-Anweisungen zu generieren, die Nullen (Padding) zu Ziffern von 0 bis 9 hinzufügen, die von Punkten umgeben sind, wodurch eine konsistente alphanumerische Sortierung ermöglicht wird (z. B. '1.2' als kleiner als '1.10' behandeln).
Datenanalyse

Type : CREATION_INTERNE


Der Code definiert ein Software-Makro und lädt oder manipuliert während seiner Kompilierung keine externen Daten direkt.

1 Codeblock
MACRO
Erklärung :
Definition des Makros `AHGaddordvar`. Es generiert eine bedingte `IF`-Logik für den DATA Step. Es transformiert die Zeichenkette, indem es die Trennzeichen '.' verdoppelt und den einzelnen Ziffern, die zwischen diesen Trennzeichen gefunden werden, eine '0' voranstellt, um das Sortierformat zu standardisieren.
Kopiert!
1%macro AHGaddordvar(var,ordVar);
2 %local i;
3 IF anydigit(&var) THEN
4 DO;
5 &ordvar='..'||trim(substr(tranwrd(&var,'.','..'),anydigit(&var)))||'..';
6
7 %DO i=0 %to 9;
8 &ordvar=tranwrd(&ordvar,".&i..",".0&i..");
9 %END;
10 &ordvar=substr(&var,1,anydigit(&var)-1)||&ordvar;
11 END;
12%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.