R) 문자열로 객체 불러오기

R) 문자열로 객체 불러오기

특정 객체 내용을 문자열을 활용해서 불러올 수 없을까? 반복문을 쓰려면 반드시 문자열 입력이 필요한데 일반적인 객체 호출은 그렇게 안된다. 관련 함수와 그 기능을 알아보자.

먼저 샘플 데이터를 만들자.

1
2
3
4
AA = 1:4
BB = LETTERS[1:6]
AA
## [1] 1 2 3 4

get() 함수를 사용해보자.

1
2
get("AA")
## [1] 1 2 3 4

get() 함수는 현재 등록된(RAM에 마운트된) 객체명과 입력된 텍스트랑 일치하는 경우 해당 객체를 출력해준다.

살짝 응용해보자.

1
2
3
4
5
6
7
8
9
10
11
12
list_obj = c("AA", "BB")
for(obj_name in list_obj){
print(obj_name)
print(get(obj_name))
print(paste0("length: ", length(get(obj_name))))
}
## [1] "AA"
## [1] 1 2 3 4
## [1] "length: 4"
## [1] "BB"
## [1] "A" "B" "C" "D" "E" "F"
## [1] "length: 6"

get() 함수를 활용하면 사용자 정의 함수를 보다 복잡하고 정교하게 만들 수 있으며 업무 자동화 관련 코드 작성에도 꽤 유용하다.

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×