Sas: excel에서 특정 범위를 가져오는 방법


RANGE 옵션과 함께 PROC IMPORT 문을 사용하여 Excel 파일의 특정 셀 범위를 SAS로 가져올 수 있습니다.

이를 위해 다음 기본 구문을 사용할 수 있습니다.

 /*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 ;

각 줄의 역할은 다음과 같습니다.

  • out : SAS로 가져온 후 데이터 세트에 제공할 이름
  • datafile : 가져올 Excel 파일의 위치
  • dmbs : 가져오는 파일의 형식
  • 바꾸기 : 파일이 이미 존재하는 경우 파일을 바꿉니다.
  • getnames : 첫 번째 줄을 변수 이름으로 사용(첫 번째 줄에 변수 이름이 없으면 NO로 설정)
  • range : 가져올 셀의 범위

이 특정 예에서는 Basketball_data.xlsx 라는 Excel 파일에서 Sheet1C4:E11 범위에 있는 셀을 가져옵니다.

다음 예에서는 Basketball_data.xlsx 라는 Excel 파일에서 실제로 이 구문을 사용하는 방법을 보여줍니다.

예 1: 범위를 지정하지 않고 Excel 파일의 데이터를 SAS로 가져오기

가져올 특정 셀 범위를 지정하지 않고 다음 구문을 사용하여 Excel 파일을 my_data 라는 SAS 데이터세트로 가져올 수 있습니다.

 /*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; 

가져올 셀 범위를 지정하기 위해 범위 문을 사용하지 않았기 때문에 SAS는 시트에서 데이터를 찾을 때까지 모든 셀을 가져왔습니다.

예 2: Excel 파일의 데이터를 SAS로 가져오고 범위 지정

다음 구문을 사용하여 Excel 파일을 my_data 라는 SAS 데이터 세트로 가져오고 범위 옵션을 사용하여 특정 셀 범위만 가져올 수 있습니다.

 /*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; 

가져올 셀 범위를 지정하기 위해 범위 문을 사용했기 때문에 SAS는 시트에서 해당 범위의 셀만 가져왔습니다.

범위 문에 명명된 범위를 전달할 수도 있습니다.

예를 들어 C4:E11 셀 범위에 my_range 라는 범위가 있는 경우 대신 PROC IMPORT 문에서 range=”my_range” 인수를 사용할 수 있습니다.

참고 : 여기에서 SAS의 PROC IMPORT 문에 대한 전체 설명서를 찾을 수 있습니다.

추가 리소스

다음 튜토리얼에서는 SAS에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

CSV 파일을 SAS로 가져오는 방법
SAS에서 CSV 파일로 데이터를 내보내는 방법
SAS에서 Excel로 데이터를 내보내는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다