So entfernen sie sonderzeichen aus zeichenfolgen in sas


Der einfachste Weg, Sonderzeichen aus einer Zeichenfolge in SAS zu entfernen, ist die Verwendung der COMPRESS- Funktion mit dem Modifikator „kas“.

Diese Funktion verwendet die folgende grundlegende Syntax:

 data new_data;
    set original_data;
    remove_specials = compress (some_string, , ' kas ');
run ;

Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.

Beispiel: Sonderzeichen aus der Zeichenfolge in SAS entfernen

Angenommen, wir haben in SAS den folgenden Datensatz, der die Namen verschiedener Mitarbeiter und deren Gesamtumsatz enthält:

 /*create dataset*/
data data1;
    input name $sales;
    datalines ;
Bob&%^ 45
M&$#@ike 50
Randy)) 39
Chad!? 14
Dan** 29
R[on] 44
;
run ;

/*view dataset*/
proc print data =data1; 

Beachten Sie, dass die Werte in der Namensspalte mehrere Sonderzeichen enthalten.

Mit der Funktion COMPRESS können wir diese Sonderzeichen entfernen:

 /*create second dataset with special characters removed from names*/
data data2;
  setdata1 ;
  new_name= compress (name, , ' kas ');
run ;

/*view dataset*/
proc print data =data2; 

Beachten Sie, dass die Spalte „new_name“ die Werte aus der Spalte „ name“ enthält, wobei die Sonderzeichen entfernt wurden.

Hier ist genau, was die COMPRESS- Funktion getan hat, um diese Sonderzeichen zu entfernen:

  • k gibt an, dass wir bestimmte Zeichen „behalten“ möchten
  • a angegeben, um alphabetische Zeichen beizubehalten
  • s wurde angegeben, um Leerzeichen beizubehalten

Hinweis : Eine vollständige Liste der Modifikatoren für die COMPRESS- Funktion finden Sie auf dieser SAS-Dokumentationsseite .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in SAS ausführen:

So extrahieren Sie Zahlen aus einer Zeichenfolge in SAS
So verwenden Sie die SUBSTR-Funktion in SAS
So konvertieren Sie Zeichenfolgen in SAS in Großbuchstaben, Kleinbuchstaben und die richtige Schreibweise

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert