Sas: hoe een specifiek bereik uit excel te importeren


U kunt de PROC IMPORT- instructie met de optie RANGE gebruiken om een specifiek celbereik uit een Excel-bestand in SAS te importeren.

Om dit te doen, kunt u de volgende basissyntaxis gebruiken:

 /*import data from Excel file called basketball_data.xlsx*/
proc import out =my_data
    datafile ="/home/u13181/basketball_data.xlsx"
    dbms =xlsx
    replace ;
    getnames =YES;
    range ="Sheet1$C4:E11";
run ;

Dit is wat elke regel doet:

  • out : Naam die aan de gegevensset moet worden gegeven nadat deze in SAS is geïmporteerd
  • datafile : Locatie van het Excel-bestand dat moet worden geïmporteerd
  • dmbs : Formaat van het bestand dat wordt geïmporteerd
  • vervangen : Vervangt het bestand als het al bestaat
  • getnames : gebruik de eerste regel als namen van variabelen (ingesteld op NO als de eerste regel geen namen van variabelen bevat)
  • bereik : het cellenbereik dat moet worden geïmporteerd

Merk op dat dit specifieke voorbeeld de cellen in het bereik C4:E11 van Blad1 importeert uit het Excel-bestand met de naam basketball_data.xlsx .

De volgende voorbeelden laten zien hoe u deze syntaxis in de praktijk kunt gebruiken met het volgende Excel-bestand met de naam basketball_data.xlsx :

Voorbeeld 1: Importeer gegevens uit een Excel-bestand in SAS zonder een bereik op te geven

We kunnen de volgende syntaxis gebruiken om het Excel-bestand te importeren in een SAS-gegevensset met de naam my_data zonder een specifiek celbereik op te geven dat moet worden geïmporteerd:

 /*import data from Excel file called basketball_data.xlsx*/
proc import out =my_data
    datafile ="/home/u13181/basketball_data.xlsx"
    dbms =xlsx
    replace ;
    getnames =YES;
run ;

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

Omdat we de range- instructie niet hebben gebruikt om een celbereik op te geven dat moet worden geïmporteerd, heeft SAS alle cellen geïmporteerd totdat er gegevens in het blad werden aangetroffen.

Voorbeeld 2: Importeer gegevens uit een Excel-bestand in SAS en geef een bereik op

We kunnen de volgende syntaxis gebruiken om het Excel-bestand te importeren in een SAS-gegevensset met de naam my_data en de bereikoptie gebruiken om alleen een specifiek celbereik te importeren:

 /*import specific cells from Excel file called basketball_data.xlsx*/
proc import out =my_data
    datafile ="/home/u13181/basketball_data.xlsx"
    dbms =xlsx
    replace ;
    getnames =YES;
range ="Sheet1$C4:E11";
run ;

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

Omdat we de range- instructie hebben gebruikt om een celbereik op te geven dat moet worden geïmporteerd, importeerde SAS alleen de cellen in dat bereik uit het blad.

Houd er rekening mee dat u ook een benoemd bereik aan de range- instructie kunt doorgeven.

Als het celbereik C4:E11 bijvoorbeeld een bereik had met de naam my_range , zou u in plaats daarvan het argument range=”my_range” in de PROC IMPORT -instructie kunnen gebruiken.

Opmerking : u kunt hier de volledige documentatie voor de PROC IMPORT- instructie in SAS vinden.

Aanvullende bronnen

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

CSV-bestanden importeren in SAS
Gegevens exporteren van SAS naar een CSV-bestand
Gegevens exporteren van SAS naar Excel

Einen Kommentar hinzufügen

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