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 파일에서 Sheet1 의 C4: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로 데이터를 내보내는 방법