728x90
728x90
안녕하세요 오늘은 assign, get함수에 대해 공부한것을 기록하려 합니다.
assign함수는 객체를 문자열로 일력받아 객체를 생성할 수 있게 해주는 함수 입니다.
보통 우리가 객체를 만들때는 a <- 1 이런식으로 생성을 하죠.
하지만 assgin함수를 이용하면 문자열을 인수로 받아 객체를 생성해 줍니다.
R을 사용하다보면 문자열을 이용해 객체를 생성할 수 없을까...? 하는 생각이 들때가 있습니다. 이때 사용할 수 있는 함수 입니다.
a <- 1
"e" <- 1
위와같이 입력하면 문자열을 이용하더라도 객체가 만들어지네요...?ㅎㅎㅎ
하지만 아래와 같은 경우엔 다릅니다.
b <- c("c","d")
b[1] <- 1
제 의도는 b객체에 담겨있는 요소 중 첫번째 요소인 "c"를 객체로 만들어 1을 저장하고 싶었습니다.
하지만 b list가 바뀌어 버리는 현상이 나타납니다.
이때 assign을 사용하면 원하는 결과를 만들 수 있습니다.
b <- c("c","d")
assign(b[1],1)
위와 같이"c"라는 객체가 생긴것을 볼 수 있습니다.
다음은 문자열을 이용해 객체를 불러올 수 있는 get함수를 보겠습니다.
abcde <- 1
get("abcde")
위와 같이 객체가 불러와진것을 볼 수 있습니다.
이렇게도 가능합니다.
f <- "b"
get(paste0("a",f,"c","d","e"))
이렇게 paste0를 이용해서도 불러올 수 있습니다.
get이나 assign이나 자주 사용하는것 같지는 않지만 가끔 사용하는것 같습니다ㅎㅎㅎ
728x90
728x90
'R' 카테고리의 다른 글
R ) 함수에서 2개 이상 변수 return하기 in r (0) | 2022.08.21 |
---|---|
R ) 피벗, 언피벗 해보기 dcast, melt in r (1) | 2022.08.20 |
R ) 독학 :: 변수간 상관성 알아보기 cor.test() in r (0) | 2022.06.03 |
R ) 독학 :: 산점도 알아보기 scatter plot (1) | 2022.05.08 |
R ) 독학 :: data 시각화 ggplot2 히스토그램 (histogram), 박스 플랏(boxplot) in r -2 플랏 겹치기 플랏 옵션 multi plot, plot option (0) | 2022.05.05 |
댓글