If and-logica gebruiken in sas
U kunt de volgende basissyntaxis gebruiken om IF AND- logica in SAS te gebruiken:
data new_data;
set my_data;
if team="Cavs" and points>20 then cavs_and_20 = 1;
else cavs_and_20 = 0;
run ;
In dit specifieke voorbeeld wordt een nieuwe gegevensset gemaakt met een kolom genaamd cavs_and_20 die de volgende waarden aanneemt:
- 1 als de waarde in de teamkolom gelijk is aan “Cavs” en als de waarde in de puntenkolom groter is dan 20.
- 0 als niet aan beide voorwaarden is voldaan.
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: IF AND-logica gebruiken in SAS
Stel dat we de volgende dataset in SAS hebben die informatie bevat over verschillende basketbalspelers:
/*create dataset*/
data my_data;
input team $points;
datalines ;
Cavs 12
Cavs 24
Warriors 15
Cavs 26
Warriors 14
Celtics 36
Celtics 19
;
run ;
/*view dataset*/
proc print data =my_data;
Stel dat we een nieuwe gegevensset willen maken met een kolom die de volgende waarden aanneemt:
- 1 als de waarde in de teamkolom gelijk is aan “Cavs” en als de waarde in de puntenkolom groter is dan 20.
- 0 als niet aan beide voorwaarden is voldaan.
We kunnen hiervoor de volgende syntaxis gebruiken:
/*create new dataset*/
data new_data;
set my_data;
if team="Cavs" and points>20 then cavs_and_20 = 1;
else cavs_and_20 = 0;
run ;
/*view new dataset*/
proc print data =new_data;
De nieuwe kolom cavs_and_20 gebruikt IF AND- logica om te bepalen of elke rij in de gegevensset een waarde van 0 of 1 moet hebben.
We kunnen zien dat er twee lijnen zijn waar de teamnaam Cavs is en de puntwaarde groter is dan 20.
Aan deze twee rijen wordt de waarde 1 toegewezen in de nieuwe kolom cavs_and_20 .
Geen enkele andere rij voldoet aan beide voorwaarden, dus alle andere rijen krijgen de waarde 0 in de kolom cavs_and_20 .
Aanvullende bronnen
In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende taken in SAS kunt uitvoeren:
Variabelen hernoemen in SAS
Nieuwe variabelen maken in SAS
Hoe tekens in een string in SAS te vervangen