본문 바로가기
4. 자료형/자료형 사이의 변환

R에서 리스트를 벡터로 바꾸는 방법, unlist()

by makhimh 2019. 12. 11.
반응형

R에서 리스트를 벡터로 바꾸는 방법, unlist()


먼저 리스트를 하나 만들겠습니다.


my_list=list(c(1,2,3),c('a','b','c'))


unlist함수를 적용하면, 리스트에 입력된 순서대로 벡터의 원소가 됩니다. 문자형만 있는 경우 factor로 반환됩니다.


> unlist(my_list)

[1] "1" "2" "3" "a" "b" "c"


저는 주로 이런 상황에 사용합니다. 데이터프레임에서 [ ] 인덱스로 열에 접근할 경우 결과가 리스트로 반환됩니다.

데이터프레임을 하나 만들어봅시다.


> myd=data.frame(c1=c(1,2,3),c2=c("a","b","c"))
> myd
  c1 c2
1  1  a
2  2  b
3  3  c


2열에 접근하여 myd_2에 저장합시다. 리스트 형태로 저장됩니다.


> myd_1=myd["c1"]
> myd_1
  c1
1  1
2  2
3  3
> typeof(myd_1)
[1] "list"


벡터 연산에 사용하기 위해 벡터로 변환합시다. unlist 함수를 적용해봅시다.


> unlist(myd_1)
c11 c12 c13
  1   2   3


이름이 지저분하게 부여됩니다. 이름을 없애봅시다.


> unlist(myd_1,use.name=F)
[1] 1 2 3


반응형

댓글