Hoe rijen met ontbrekende waarden in sas te verwijderen


U kunt de volgende basissyntaxis gebruiken om rijen met ontbrekende waarden uit een gegevensset in SAS te verwijderen:

 data new_data;
    set my_data;
    if cmiss(of _all_) then delete;
run ;

Dit specifieke voorbeeld creëert een nieuwe dataset genaamd new_data waarin alle rijen met ontbrekende waarden in de originele dataset genaamd my_data zijn verwijderd.

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

Voorbeeld: Verwijder rijen met ontbrekende waarden 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 assists;
    datalines ;
Mavs 113 22
Pacers 95.
Cavs. .
Lakers 114 20
Heat 123 39
Kings. 22
Raptors 105 11
Hawks 95 25
Magic 103 26
Spurs 119.
;
run ;

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

Houd er rekening mee dat er verschillende rijen zijn met ontbrekende waarden.

We kunnen de volgende code gebruiken om een nieuwe dataset te maken waarin we alle rijen uit de bestaande dataset verwijderen die ontbrekende waarden in een kolom hebben:

 /*create new dataset that removes rows with missing values from existing dataset*/
data new_data;
    set my_data;
    if cmiss(of _all_) then delete;
run ;

/*view new dataset*/
proc print data =new_data;

We kunnen zien dat alle rijen met ontbrekende waarden uit de dataset zijn verwijderd.

Opmerking #1 : Het argument _all_ in de functie CMISS geeft aan dat SAS moet zoeken naar ontbrekende waarden in alle kolommen in elke rij.

Opmerking #2 : U kunt de volledige documentatie van de CMISS- functie hier vinden.

Aanvullende bronnen

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

Hoe duplicaten in SAS te verwijderen
Hoe ontbrekende waarden in SAS te tellen
Hoe ontbrekende waarden te vervangen door nul in SAS

Einen Kommentar hinzufügen

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