Hoe ontbrekende waarden te vervangen door nul in sas
Vaak wilt u ontbrekende waarden in een SAS-dataset vervangen door nullen.
Gelukkig is dit eenvoudig te doen met behulp van een eenvoudige if then -instructie.
De volgende voorbeelden laten zien hoe u ontbrekende waarden in de praktijk kunt vervangen door nullen.
Voorbeeld 1: Vervang ontbrekende waarden in alle kolommen
Stel dat we de volgende gegevensset in SAS hebben met drie kolommen, elk met ontbrekende waarden:
/*create dataset*/ data my_data; input xyz; datalines ; 1. 76 2 3 . 2 3 85 4 5 88 2 2 . 1 2 69 5. 94 4 1 . . . 88 4 3 92 ; run ; /*view dataset*/ proc print data =my_data;
We kunnen de volgende code gebruiken om ontbrekende waarden te vervangen door nullen in elke kolom van de dataset:
/*create new dataset with missing values replaced by zero*/
data my_data_new;
set my_data;
array variablesOfInterest _numeric_ ;
do over variablesOfInterest;
if variablesOfInterest=. then variablesOfInterest= 0 ;
end ;
run ;
/*view new dataset*/
proc print data =my_data_new;
Merk op dat ontbrekende waarden in elke kolom zijn vervangen door nullen.
Opmerking : het argument _numeric_ vertelt SAS om ontbrekende waarden te vervangen door nullen in elke numerieke kolom in de gegevensset.
Voorbeeld 2: Vervang ontbrekende waarden in een specifieke kolom
Laten we opnieuw aannemen dat we de volgende gegevensset in SAS hebben met drie kolommen, elk met ontbrekende waarden:
/*create dataset*/ data my_data; input xyz; datalines ; 1. 76 2 3 . 2 3 85 4 5 88 2 2 . 1 2 69 5. 94 4 1 . . . 88 4 3 92 ; run ; /*view dataset*/ proc print data =my_data;
We kunnen de volgende code gebruiken om ontbrekende waarden alleen door nullen te vervangen in kolom “y” van de dataset:
/*create new dataset with missing values in "y" column replaced by zero*/
data my_data_new;
set my_data;
array variablesOfInterest y;
do over variablesOfInterest;
if variablesOfInterest=. then variablesOfInterest= 0 ;
end ;
run ;
/*view new dataset*/
proc print data =my_data_new;
Houd er rekening mee dat alleen de ontbrekende waarden in de kolom „y“ zijn vervangen door nullen.
Aanvullende bronnen
In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende taken in SAS kunt uitvoeren:
Gegevens normaliseren in SAS
Hoe duplicaten in SAS te verwijderen
Procedureoverzicht gebruiken in SAS
Hoe waarnemingen te selecteren die niet nul zijn in SAS