Wsyang.com

Mac, Statistics, and Common Life in Japan

R에서 SAS의 영구파일 sas7bdat 이용하기

leave a comment

최근 R package가 통계 분석에 많이 사용된다고는 하지만, 기업에서는 SAS나 SPSS를 더 많이 사용하는 것으로 알고 있습니다. 저도 대학이나 연구기관의 의뢰에는 R를 사용하지만, 기업의 데이터 분석에는 SAS를 이용합니다.

간혹 클라이언트로부터 받은 데이터가 SAS의 영구 파일형식인 sas7bdat일 때가 있습니다. 분석할 때 아무래도 손에 익은 R을 선호하게 되는데 SAS를 사용할 수 있는 환경에 있으면 데이터를 일반 ASCII 파일로 변환하여 사용하면 되지만 SAS를 사용할 수 없는 환경에 있을 때도 있습니다.

물론 R에서 SAS 형식의 데이터를 불러오는 함수 read.ssd()가 있긴 하지만, 이도 시스템에 SAS가 설치되어 있어야만 이용할 수 있어서 이래저래 불편했었습니다. 그런데 최근 sas7bdat라는 패키지가 공개되어 간단하게 이 형식의 데이터를 R에 불러올 수 있게 되었습니다.

먼저 sas7bdat 패키지를 R에 인스톨합니다.

1
> install.packages("sas7bdat")

예를 들어 SAS에서 제공하는 예제 데이터 “cars.sas7bdat”를 R로 불러 오기 위해서는

1
2
> library(sas7bdat)
> cars < - read.sas7bdat("ftp://ftp.sas.com/edu/hec/cars.sas7bdat")

와 같이 함수 read.sas7bdat()를 이용하면 R의 데이터프레임 형식으로 변환시킬 수 있습니다.

그 후엔 원하는 분석을 진행하면 되겠지요.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
> summary(cars)
            Model      Country        Type        Weight     TurningRadius  
 Acura Integra  :  1   Japan:30   Compact:22   Min.   :1695   Min.   :32.00  
 Acura Legend V6:  1   Other:37   Large  :17   1st Qu.:2624   1st Qu.:36.00  
 Audi 100       :  1   USA  :49   Medium :30   Median :2920   Median :39.00  
 Audi 80        :  1              Small  :22   Mean   :2958   Mean   :38.59  
 Audi 90        :  1              Sporty :25   3rd Qu.:3331   3rd Qu.:41.00  
 BMW 325i       :  1                           Max.   :4285   Max.   :47.00  
 (Other)        :110                                                         
  Displacement     Horsepower       GasTank     
 Min.   : 61.0   Min.   : 55.0   Min.   : 9.20  
 1st Qu.:115.5   1st Qu.:100.0   1st Qu.:14.15  
 Median :143.0   Median :129.0   Median :15.90  
 Mean   :158.3   Mean   :130.2   Mean   :16.24  
 3rd Qu.:181.0   3rd Qu.:150.0   3rd Qu.:18.00  
 Max.   :350.0   Max.   :278.0   Max.   :27.00  
 
> with(cars, summary(Weight))
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
   1695    2624    2920    2958    3331    4285

아직 대용량 데이터를 대상으로 써보지는 않았지만, SAS가 없어도 직접 sas7bdat 형식의 파일을 R에서 이용할 수 있다는 점에서 유용하게 사용할 수 있을듣 합니다.

 

Written by 양 우성

2011/07/27 at 2:43 pm

Posted in R-Tips,SAS

Tagged with , , ,