Data Export

sample Code


사용할 데이터는 Revolution 폴더안의 Sample Data로, "mortDefaultSmall2009"라는 이름의 csv파일이다.
데이터의 행 수는 총 10000개 이고, 'creditScore', 'houseAge', 'yearsEmploy', 'ccDebt', 'year', 'default' 로 총 6개의 변수(열)를 가지고 있다.
현재 사용한 데이터는 2009년 데이터이지만, 실제는 2000년부터 2009년까지 10년간의 sample data가 있다.
뒤에 데이터 합치기와 같은 부분에서 다른 연도의 데이터도 사용될 것이다.


# (1-1)data의 위치지정 Revolution R을 다운할 시, 자동으로 생성되는 Sample
# data중 하나인 데이터로, sampleData폴더의 'mortDefaultSmall2009'
# csv파일을 사용


text_mort <- "C:/Revolution/R-Enterprise-6.1/R-2.14.2/library/RevoScaleR/SampleData/mortDefaultSmall2009.csv"

# (1-2)rxImport를 사용한 data import


data_mort <- rxImport(inData = text_mort, outFile = "mort2009.xdf", overwrite = TRUE)
# (1-3)rxXdfToText를 이용한 Import된 Data의 Export

# text파일로 변환될 때의 구분자는 'sep'라는 옵션으로 정하며, 이 경우에는
# 쉼표(,)를 구분자로 두었음


Export_text <- rxXdfToText(inFile = data_mort, outFile = "Export_text", overwrite = TRUE, 
    sep = ",")
## 
## Chunk 1 of 1 (10000 of 10000 rows). Time: 0.110 seconds.
## Total time: 0.190 seconds.

Export_확인

(1-2)에서 불러들인 파일이 위와 같이 'Export_mort'라는 이름의 text파일로 내보내지게 된다.


# (1-2)에서 사용한 데이터를 Data Frame형태로 내보내게 된다.

# (1-4)rxXdfToDataFrame을 사용한 Data Export


Export_DataFrame <- rxXdfToDataFrame(file = data_mort, varsToDrop = c("year", 
    "default"))
## 
Rows Processed: 10000
## Time to read data file: less than .001 secs.
## Time to convert to data frame: less than .001 secs.

# (1-5)만들어진 Data Frame 확인

head(Export_DataFrame)
##   creditScore houseAge yearsEmploy ccDebt
## 1         701       23           2   3661
## 2         683       12           5   3384
## 3         705       30           5   3210
## 4         769       13           5   2843
## 5         741       11           7   1532
## 6         731       14           4   5302

(1-3) 으로 만들어진 파일과 같은 파일이지만, 형식이 다른 파일이 저장되게 된다.

Appendix

ARGUMENTS

rxImportrxTextToXdf에서 사용한 Argument에 추가되는 Argument들가 정의되어 있다. 이에 관한 Arguments들을 보려면, Click Here!!


1. rxXdfToText

Usage

rxXdfToText(inFile, outFile, varsToKeep = NULL, varsToDrop = NULL, rowSelection = NULL, transforms = NULL, transformObjects = NULL, transformFunc = NULL, transformVars = NULL,
transformPackages = NULL, transformEnvir = NULL, overwrite = FALSE, sep = “,”, quote = TRUE, na = “NA”, eol = “\n”, blocksPerRead = rxGetOption(“blocksPerRead”), reportProgress = rxGetOption(“reportProgress”), …)

2. rxXdfToDataFrame

Usage

rxXdfToDataFrame(file, varsToKeep = NULL, varsToDrop = NULL, rowVarName = NULL, rowSelection = NULL, transforms = NULL, transformObjects = NULL, transformFunc = NULL, transformVars = NULL, transformPackages = NULL, transformEnvir = NULL,
removeMissings = FALSE, stringsAsFactors = FALSE, blocksPerRead = rxGetOption(“blocksPerRead”), maxRowsByCols = 3000000, reportProgress = rxGetOption(“reportProgress”), userObjects = NULL, cppInterp = NULL)


Hankuk University of Foreign Studies. Dept of Statistics. Daewoo Choi Lab. Yeeseul Han.
한국외국어대학교 통계학과 최대우 연구실 한이슬
e-mail : han.lolove17@gmail.com