Sas: komma's uit een tekenreeks verwijderen
De eenvoudigste manier om komma’s uit een tekenreeks in SAS te verwijderen, is door de functie TRANSLATE te gebruiken, die elk voorkomen van een teken naar een ander teken converteert.
Om dit te doen, kunt u de volgende basissyntaxis gebruiken:
data new_data;
set original_data;
string_var = compress ( translate (string_var,"",','));
run ;
In dit specifieke voorbeeld wordt elke komma uit elke tekenreeks van de variabele string_var in een gegevensset verwijderd.
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: komma’s verwijderen uit een tekenreeks in SAS
Stel dat we de volgende dataset in SAS hebben die informatie bevat over verschillende basketbalteams:
/*create dataset*/
data my_data;
input team $points;
datalines ;
,Mavs, 113
Pacers 95
,Ca,vs 120
Lakers 114
Heat 123
King,s 119
Raptors 105
,Hawks 95
Ma,gic 103
Spu,,rs 119
;
run ;
/*view dataset*/
proc print data =my_data;
Houd er rekening mee dat verschillende tekenreeksen in de teamkolom op verschillende plaatsen komma’s bevatten.
We kunnen de volgende syntaxis gebruiken om alle komma’s uit tekenreeksen in de teamkolom te verwijderen:
/*create new dataset where commas are removed from each string in team column*/
data new_data;
set my_data;
team = compress ( translate (team,"",','));
run ;
/*view new dataset*/
proc print data =new_data;
Houd er rekening mee dat komma’s zijn verwijderd uit elke tekenreeks in de teamkolom .
Dit is wat deze code feitelijk deed:
- De TRANSLATE- functie verving elk de komma door een spatie.
- Vervolgens verwijderde de COMPRESS- functie de witruimte uit elke string.
Opmerking : u kunt hier de volledige documentatie voor de SAS TRANSLATE- functie vinden.
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
Speciale tekens verwijderen uit tekenreeksen in SAS