본문 바로가기

데이터분석/R

[R 프로그래밍] dplyr 패키지 함수들

#dplyr함수들은 %>%로 여러 함수를 조합해서 사용 가능

 # 여러 함수 조합하기

dataSample %>% 

                    select (test, test1, test2) %>%

                    filter ( test >= 30) %>%

                    head (3)



#head()함수

 # 해당 데이터의 일부만 출력한다.

dataSample %>% head(5) 



#filter() 함수

http://realab.tistory.com/7

 # 특정 조건 만족 데이터 추출

dataSample %>% filter ( test > = 30)


# AND 조건 체크 (조건 모두 만족)

dataSample %>% filter ( id == 1 & test > 30) 


 # OR 조건 체크 (조건들 중 하나 이상 만족)

dataSample %>% filter ( test1 > 30 | test2 > 50)



#select() 함수

http://realab.tistory.com/9

 # 특정 컬럼 추출하기

dataSample %>% select (id)


 # 특정 컬럼들 추출하기

dataSample %>% select (id, job)



#arrange() 함수

http://realab.tistory.com/10

 # 오름차순 정렬하기

dataSample %>% arrange (id)


 # 내림차순 정렬하기

dataSample %>% arrange (desc(id))


 # 여러 컬럼 기준으로 정렬하기  ( id 오름차순 후, id가 동일하면 test 내림차순 정렬)

dataSample %>% arrange(id, desc(test))




#mutate() 함수

http://realab.tistory.com/11

 # 기존 컬럼 값을 연산해서 새로운 컬럼 추가하기

dataSample %>% (total = test1 + test2)


 # 여러 개의 컬럼 추가하기

dataSample %>% 

                    mutate ( total = test1 + test2),

                    mean = total / 2)


 # 조건문 적용해서 컬럼 추가하기

dataSample %>% mutate (pass = ifelse (test > 60, "pass", "fail"))



#group_by() 함수

#summarise() 함수

http://realab.tistory.com/13

 # 그룹 별로 요약해서 요약한 통계 량 보여주기

dataSample %>% 

                    group_by(class) %>%

                    summarise (mean_test = mean(test))


#그룹 안에서 다시 그룹 나누기

dataSample %>%

                    group_by(class, pass) %>%

                    summarise (mean_test = mean(test)


#left_join() 함수

http://realab.tistory.com/15

#특정 컬럼을 기준으로 데이터 합치기

dataSample_all <- left_join(dataSample1, dataSample2, by="id") 



#bind_rows() 함수

http://realab.tistory.com/15


# 다른 테이블을 가져와서 row추가하기

dataSample_all <- bind_rows (data1, data2, data3) 



#distinct() 함수

http://realab.tistory.com/17

 # 특정 컬럼의 유니크 값 추출하기

 distinct (exam, english)