반응형
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
반응형
'4. 자료형 > 자료형 사이의 변환' 카테고리의 다른 글
R 자료형 사이의 변환방법 (문자형,숫자형,논리형,NULL형) (0) | 2020.01.28 |
---|
댓글