1. dput/dget 예시
dput(저장)과 dget(읽기)을 이용하여 변수 값을 저장할 수 있다.
> m <- c(1,2,3)
> dput(m, file="m.R")
> m <- 0
> m
[1] 0
> m <- dget("m.R")
> m
[1] 1 2 3
>
dput으로 저장한 m.R에는 아래와 같이 저장된다.
$cat m.R
c(1, 2, 3)
2. dump /source 예시
dump는 저장, source는 읽기이다.
> x<-"jonathan"
> y<-data.frame(a=1,b=2)
> dump(c("x","y"), file = "data.R")
> rm(x, y)
> x
에러: 객체 'x'를 찾을 수 없습니다
> y
에러: 객체 'y'를 찾을 수 없습니다
> source("data.R")
> x
[1] "jonathan"
> y
a b
1 1 2
> str(y)
'data.frame': 1 obs. of 2 variables:
$ a: num 1
$ b: num 2
>
>
저장된 파일을 보면, 다음과 같은 형태로 저장됨을 확인할 수 있다.
$ cat data.R
x <-
"jonathan"
y <-
structure(list(a = 1, b = 2), .Names = c("a", "b"), row.names = c(NA,
-1L), class = "data.frame")
3. 바이너리 저장은 save/load이다.
> x<-"jonathan"
> y<-data.frame(a=1,b=2)
> save(x, y, file = "data.rda")
> rm(x, y)
> x
에러: 객체 'x'를 찾을 수 없습니다
> y
에러: 객체 'y'를 찾을 수 없습니다
> load("data.rda")
> x
[1] "jonathan"
> y
a b
1 1 2
> str(y)
'data.frame': 1 obs. of 2 variables:
$ a: num 1
$ b: num 2
>
참고로 현재 메모리에 올라와있는 모든 객체도 메모리에 저장할 수 있다.
즉, R에서 작업 중인 메모리를 가지고 있다가 다른 컴퓨터나, 메모리를 깨끗히 지워진 상태에서도 다시 메모리 정보를 읽어올 수 있다. save.image()를 활용한다.
> aa<-1
> bb<-c(1,2,3)
> cc<-data.frame(a=1, b=2)
> save.image(file = "dump.rdb")
> rm (aa,bb,cc)
> aa
에러: 객체 'aa'를 찾을 수 없습니다
> bb
에러: 객체 'bb'를 찾을 수 없습니다
> cc
에러: 객체 'cc'를 찾을 수 없습니다
> load("dump.rdb")
> aa
[1] 1
> cc
a b
1 1 2
> bb
[1] 1 2 3
>
'R' 카테고리의 다른 글
[R] 벡터 연산 (0) | 2016.02.17 |
---|---|
[R] str(), dput(), args() : 함수 원형 보기 (0) | 2016.02.15 |
[R] NA (0) | 2016.02.14 |
[R] 묵시적 변환, 명시적 변환 예시 (0) | 2016.02.14 |
[R] 평균 구하는 함수 (0) | 2016.01.22 |