R:패키지

학교의 모든 지식. SMwiki
Sam (토론 | 기여)님의 2020년 8월 10일 (월) 23:01 판 (→‎dplyr)
둘러보기로 이동 검색으로 이동

R언어 공부를 위한 틀 틀:R

  1. R:개요
    1. R:코딩팁
    2. R:연산자
  2. R:객체
    1. R:자료형
    2. R:자료구조
  3. R:함수
    1. R:자주사용하는 함수
      1. R:aplly계열(반복문, 중복작업)
  4. R:제어문
    1. R:조건문
    2. R:반복문
  5. R:자료조작
    1. R:데이터프레임
    2. R:행렬
  6. R:데이터 저장과 불러오기
    1. R:데이터베이스
    2. R:특정조건 추출하기
  7. R:패키지
    1. R:magrittr(파이프연산자)
    2. R:dplyr(데이터프레임 조작)
    3. R:ggplot2(그래프그리기)
    4. R:KoNLP(한글 텍스트마이닝), wordcloud2(워드클라우드)
    5. R:ddply(데이터 집계, 조작)
    6. R:tidyverse(데이터를 정제하는 패키지들의 집합)
    7. R:jsonlite(JSON 파일 다루기)
    8. R:pbapply(apply계열에 진행바를 보여준다.)
  8. R:활용
    1. R:데이터 접근
    2. R:연관성분석
    3. R:분류분석
  9. R:팁
    1. R:연구용 팁

패키지 설치하기

패키지 설치 install.pakages("패키지명")
패키지 부착 library("패키지명")



ddply

데이터를 집계하는 패키지.

이름 기원 기능 사용법
ddply 집계데이터를 만든다.

데이터셋을 고르고, 집계할 기준열을 고르고,

여기에 적용할 함수를 써서 계산열에 저장.

(집계 기준에 해당하는 데이터끼리 연산되어 계산열에 저장된다.)

ex) 집계기준열이 성적 A라면, 성적 A에 해당하는 이들의 평균만 계산하여 계산열에 저장한다.

성적 평균
A A의 평균만 모아진다.
B B의 평균만 모아진다.
... ...
새로운데이터셋 = ddply(데이터셋,

c("집계기준열1, 집계기준열2, ...), summarise,

계산열 = 계산함수(데이터셋에서연산할컬럼명),

계산열2 = 계산함수(데이터셋에서연산할컬럼명2),

...

)


ggplot2

R과 Python에서 그래프를 그려주는 패키지.

단계 방법 사용법
패키지 부착 패키지 부착은

library(ggplot2)

library(ggthemes)

2개를 시켜야 한다.

library(ggplot2)

library(ggthemes)

기초 데이터 준비 데이터셋과

x축에 둘 열을 준비

ggplot(데이터셋, aes( x = 열 ))

aesthetic(미적)의 줄임말.

ggplot(데이터셋, aes( x = 열 ))

그래프 그리기

단계 방법 사용법
각 축에 대한 막대를 그린다.

(명목형 변수에 대하여)

ggplot(데이터셋, aes( x = 열이름1 )) + geom_bar(속성)

열에 해당하는 값을 세어 막대의 크기로 표현한다.

geom_bar 속성
의도 방법 옵션 효과
색 채우기 fill='색이름' royalblue
열이름1 열마다 다른 색의 막대가 그려진다.
2가지 색 aes(fill='열이름2') x축과 다른 열을 사용하면 1번 열에 해당하면서 2번째 열에 해당하는 갯수를 세어 막대를 2가지 색으로 나누어 표현한다.
기초데이터

+ geom_bar(속성)

히스토그램

(연속형 변수에 대하여)

연속형변수를 일정구간으로 나누어 집계한다.

ggplot(데이터셋, aes( x = 열이름1 )) + geom_histogram(속성)

histogram 속성
의도 방법 옵션 효과
구간 정하기 binwidth = 구간크기 구간크기로 자른다.
테두리색 col='색이름' red 테두리색을 지정한다.
색 채우기 fill='색이름' 막대 색을 채운다.
기초데이터

+ geom_histogram(속성)

밀도그래프

(연속형 변수에 대하여)

위와 같은 개념이지만, 구간을 작게 나누어 부드러운 곡선을 그린다.

ggplot(데이터셋, aes( x = 열이름1 )) + geom_density(속성)

density 속성
의도 방법 옵션 효과
테두리색 col='색이름' red 테두리색을 지정한다.
색 채우기 fill='색이름' 막대 색을 채운다.
기초데이터

+ geom_density(속성)

박스플롯 가운데 선은 중위값,

아래는 1분위수, 위는 3분위수를 나타낸다.

기초데이터

+ geom_boxplot(속성)

산점도 ggplot(데이터셋, aes( x = 열이름1, y = 열이름2 ))

다음처럼 특정 조건을 만족하는 값을 다른 색으로 처리해 계산할 수도 있다. geom_point(aes(col = 열이름)

기초데이터

+ geom_point(속성)

그래프 안에 다른 열을 넣으면 그 열별로 따로 계산된다.

geom_boxplot(aes(fill="열이름")


이외 기능

의도 방법 사용법
라벨 붙이기 위의 명령 뒤에 라벨을 붙인다. 그래프

+ xlab("x라벨") + ylab("y라벨")

타이틀 붙이기 그래프

+ ggtitle("타이틀")

apply

library(dplyr)

library(reshape)

library(plyr)

apply

for문이 여러 개의 열에 대해 작동하게 하려면 코드가 복잡해진다. apply는 동시에 여러 행과 열을 연산하는 데 편하다.

이름 기원 기능 사용법
apply() apply(데이터셋[범위], 계산기준, 연산)

dplyr

구성이 복잡한 경우, %>%를 활용하여 연산을 펴서 입력하기 위한 도구이다.

데이터셋[범위] %>% #범위를 설정하고

rowMeans() %>% #연산할 함수를 설정한다.

head() #이어서 연산할 것들을 덧붙인다.

한 줄로 쓸 수 있지만, 그렇게 하면 읽기 복잡해진다. 이를 직관적으로 보기 위한 기능.


또한 %>% 로 다른 명령어와 연계할 수 있어, 굉장히 편하게 사용할 수 있다.

집계데이터 만들기

이름 기원 기능 사용법
group_by() 집계기준 조합을 정해준다.

집계된 그룹을 따라 연산해 열을 만들 수 있다.

집계데이터 = 데이터셋 %>%

group_by(열이름1, 열이름2) %>%

summarise(열이름3 = 연산, 열이름4 = 연산, ....)

ungroup() 다시 사용할 땐 에러방지를 위해 ungroup 해주기. 데이터형 = 기존데이터형 %>%

ungroup()

count() 그룹화 이후에 사용하면 해당 그룹에 속한 데이터 갯수를 세어준다. 집계데이터 = 데이터셋 %>%

group_by(열이름1, 열이름2) %>%

count()