본문 바로가기
R프로그래밍

R프로그래밍 - Vector 정렬 (sort/order 함수)

by 미스터탁 2020. 6. 22.

 

Vector내에서 정렬하는 방법에 대해 다루어 보도록 하겠습니다

 

 

1. Sort함수

 

a에 랜덤한 숫자 벡터를 선언하고

sort함수를 이용해 아래와 같이 정렬할 수 있습니다. 

 

내림차순을 하기 위해서는 decreasing = T 옵션을 넣어주어야 하고

 

오름차순을 위해서는 옵션없이 사용하시면 됩니다.

 

기본 옵션이 오름차순이기 때문입니다.

a<-c(3,5,6,1,8,9,11,13) 
sort(a,decreasing = T) 
sort(a) 
sort(a,decreasing = F)

 

 

 

 

 

 

2. order함수

 

sort외에 정렬할 수 있는 order함수가 있는데, 처음접하면 조금 어렵게 느껴질 수 있습니다.

 

order함수는 vector값들의 순서 index를 반환합니다.

 

아래 예시를 보면 

order(a)값이

 

4, 1, 2, ... 이렇게 나오는데

a의 네번째 값이 첫번째, a의 첫번째 값이 두번째, a의 두번째 값이 세번째 order라는 뜻입니다.

정렬하기 위해선 이 값들을 a에 넣어서 반환시켜야합니다.

 

a[order(a)] # 는 오름차순이고

a[order(-a)] # 는 내림차순을 의미합니다.

 

조금 어려울수 있지만, sort보다는 order함수에 익숙해지는 게 좋습니다.

 

a 
order(a)  
## 4 a의 네번째 값이 첫번째로 
## 1 a의 첫번째 값이 두번째로 
## 2 a의 두번째 값이 세번째로... 

order(-a) 
a[order(a)] ## 오름차순 
a[order(-a)] ## 내림차순

 

 

 

 

 

인프런에서 R강의/딥러닝 강의를 업로드 하고 있습니다.

https://www.inflearn.com/roadmaps/225

 

[입문~활용] 데이터 분석가 되기 with R | 더 나은 학습을 위한 가이드

기초부터 실전까지,R로 시작하는데이터 분석의 세계! 고객 분석, 트렌드·브랜드 분석, 데이터 저널리즘까지... 사물인터넷(IoT)과 빅데이터, 인공지능(AI)과 같은 기술이 주목을 받기 시작하면서 �

www.inflearn.com

 

반응형

댓글