Gae Ko's Blog

[Data Science] R의 dplyr 패키지 본문

통계/R

[Data Science] R의 dplyr 패키지

Gae Ko 2018. 2. 19. 22:34

dplyr 는 데이터를 빨리 쉽게 가공할 수 있도록 도와주는 R 패키지 



1. 베이스 R 데이터 가공과의 비교 


-  체인(chain)연산자 %>% 사용

-  베이스 R 데이터 처리는 인덱싱 연산자 [, [[ , $ 를 사용하는 반해, dplyr는 이들을 사용하지 않고 '동사'를 조합하여 사용

 몇가지 동사를 사용하여 코드 쓰기 편리 

- R studio 사용하면 변수명 자동완성 

- 데이터 프레임만 처리. 베이스 R은 데이터 프레임뿐만 아니라 벡터, 행렬, 다차원 배열, 리스트 가능

- 문법이 SQL과 유사 


2. dplyr의 핵심 동사 


  • filter(df, 조건) : 행 선택
  • arrange(df, 변수1, 변수2, ...) : 행 정렬
  • select(df, 변수1, 변수2, ... ) : 변수/열 선택
  • mutata(df, 타겟변수1 = 변환, ... ) : 변수 변환
  • summarize(df, 타겟변수1=통계함수, ... ) : 변수 요약
  • distinct( )
  • sample_n( ) and sample_frac( )

두번째 파라미터는 df의 여러 변수들을 지칭하는데 df$var1 식으로 언급하지 않고 var1 식으로 지칭하면 됨.

따라서 코드를 읽기 어렵게 하는, 데이터 프레임의 변수 선택을 위한 $연산자를 사용할 필요가 없음

-->> 각 함수에 대한 설명 http://gaeko-security-hack.tistory.com/129?category=722260



3. dplyr의 유용한 유틸리티 : glimpse, tbl_df( ), %>%


데이터 프레임에 tdl_df( )를 적용하면 tdf_df클래스 속성을 가지게 되며 화면에 표시하면 현재 스크린에 이쁘게 행과 열만 출력해준다.

따라서 행의 개수, 열의 개수가 많은 데이터를 취급할 때 유용.


> my_big_data <- tdl_df(read.table("big_data.csv")) 


gilmpse함수는 데이터 프레임을 전피(traspose)하여 모든 병수를 다 볼 수 있게 해주고, 데이터형을 나타내며, 처음 몇 데이터를 보여줌.

gilmpse(data_name)


파이프 연산자 %>% 

> # x %>% f(y) 는 f(x, y)로 변환해줌. 가독성↑

>

> iris %>% head 

> # head(iris) 와 같음 



'통계 > R' 카테고리의 다른 글

[Data Science] dplyr의 group_by, chaining, join  (0) 2018.02.20
[Data Science] dplyr 핵심 동사  (0) 2018.02.19
[R] apply() 함수  (0) 2018.02.16
[R] 정렬하기  (0) 2018.02.16
[R] 데이터타입  (0) 2018.02.02