R에는 매우 다양한 라이브러리들이 있습니다. 그리고 라이브러리들이 서로 유사한 기능을 하는 경우도 많습니다. 그래서 항상 어느 라이브러리를 사용해야 좋은지 고민이 되는 경우가 많습니다.
데이터를 다루기 위한 라이브러리도 그러합니다. 별도 라이브러리 없이 기본 R 명령어로도 잘 사용하는 분들도 계시고, 데이터를 다루는 라이브러리 중 "data.table"를 사용하는 분들도 있습니다. 저는 개인적으로 처음에 dplyr, tidyr로 데이터를 다루기 시작하여 이 두 개 라이브러리를 사용합니다. 그래서 이 라이브러리를 통해 데이터를 다루는 것에 대해 정리하고자 합니다.
1. 특정 컬럼값만 가져오기 : Select
SQL 명령어를 아시는 분들이면 이미 익숙한 SELECT가 dplyr에도 있습니다. 동일하게 select 명령어를 사용하면, 원하는 컬럼만을 데이터셋으로부터 가져올 수 있습니다.
위 코드에서 조금 생소한 코드가 하나 보이네요. 바로 %>% 입니다. 해당 코드는 dplyr 라이브러리에 들어가 있는 코드로 해당 코드 앞의 결과를 뒤에 따라오는 함수의 첫번째 인자 값으로 연결해주는 코드입니다. 그래서 위 코드에서 dataset %>% select(NAME)은 select(dataset, NAME)과 동일한 결과를 보여주게 됩니다.
두번째로 select를 할 때, 기존 컬렴명을 변경하고 싶으면 select(새로운 컬렴명=기존컬럼명) 형태로 명령어를 실행하면 됩니다.
그럼 이쯤에서 질문 하나! 모든 컬럼을 다 가져오도록 하되, 특정 컬럼명만 바꿔주고 싶으면 어떻게 해야할까요?? select를 할 때, 새로운 컬럼명을 적어주면 컬럼명을 바꿔서 데이터셋을 가져올 수 있는데... 적어준 컬럼만을 가져오기 떄문에 이 문제가 발생합니다.
그럴 떄는 rename를 사용하면 됩니다.
dataset %>% rename(NM=NAME)
이 구문을 실행하면, 전체 데이터셋 컬럼(NAME, AGE, SEX)을 다 가져오되, NAME만 NM으로 변경하게 됩니다. 기본적으로 제공하는 R구문을 사용하는 것보다 상대적으로 매우 간단합니다. 만약 위와 동일한 결과를 기본 R 패키지 구문으로 작성한다면 다음과 같이 작성할 수 있습니다.
'Playing with Data > R | Python' 카테고리의 다른 글
dplyr를 사용할 때, 인자값을 자유롭게 사용할 수 있는 팁 (1) | 2018.10.21 |
---|---|
R에서 <<- 연산자 의미 (0) | 2018.06.07 |
데이터 타입 비교 - Vectors,Matrices, Arrays, Lists and Data Frames (0) | 2018.01.24 |
for문을 대체할 수 있는 apply 함수 (0) | 2018.01.23 |
데이터 분석의 시작은 데이터 반죽하기 (0) | 2018.01.22 |