Speciale tekens verwijderen uit tekenreeksen in sas


De eenvoudigste manier om speciale tekens uit een tekenreeks in SAS te verwijderen, is door de COMPRESS- functie te gebruiken met de ‚kas‘-modifier.

Deze functie gebruikt de volgende basissyntaxis:

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

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld: speciale tekens verwijderen uit tekenreeks in SAS

Stel dat we de volgende dataset in SAS hebben die de namen van verschillende werknemers en hun totale omzet bevat:

 /*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; 

Houd er rekening mee dat de waarden in de naamkolom verschillende speciale tekens bevatten.

We kunnen de COMPRESS- functie gebruiken om deze speciale tekens te verwijderen:

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

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

Houd er rekening mee dat de kolom new_name de waarden uit de naamkolom bevat, waarbij de speciale tekens zijn verwijderd.

Dit is precies wat de COMPRESS- functie deed om deze speciale tekens te verwijderen:

  • k geeft aan dat we bepaalde karakters willen ‚behouden‘
  • a gespecificeerd om alfabetische tekens te behouden
  • s gespecificeerd om witruimtetekens te behouden

Opmerking : u kunt een volledige lijst met modifiers voor de COMPRESS- functie vinden op deze SAS-documentatiepagina .

Aanvullende bronnen

In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende taken in SAS kunt uitvoeren:

Hoe getallen uit een string in SAS te extraheren
Hoe de SUBSTR-functie in SAS te gebruiken
Tekenreeksen converteren naar hoofdletters, kleine letters en juiste letters in SAS

Einen Kommentar hinzufügen

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