정보

    • 업무명     : R을 이용한 통계 분석 및 데이터 시각화 : tidyr

    • 작성자     : 박진만

    • 작성일     : 2020-04-07

    • 설   명      :

    • 수정이력 :

     

     내용

    [개요]

    • R은 통계 분석 및 시각화 등의 기능을 갖춘 프로그래밍 언어 내지 통계 분석 환경입니다. 

    • 통계 분석 기능으로 통계 검정, 선형 회귀 분석, 시계열 데이터 분석, 클러스터링 등을 지원하고 있습니다.

    • 또한 최신 논문에서 발표된 같은 새로운 기술도 R로 구현되는 경우가 많습니다.

    • 특히 시각화 기능으로 히스토그램, 막대 그래프, 선 그래프, 산포도, 나무 모양 그림이나 히트맵 등 기본적인 그래프가 기본으로 지원하고 있습니다.

    • 또한 ggplot2 등의 패키지를 사용하여 더 높은 수준의 그림을 가시화할 수 있습니다.

     

     

    [특징]

    • 데이터를 이해하기 위해서 통계 분석 및 데이터 시각화가 요구되며 이 프로그램은 이러한 목적을 달성하기 위한 소프트웨어

       

    [기능]

    • 데이터형 소개

     

    [활용 자료]

    • 없음

     

    [자료 처리 방안 및 활용 분석 기법]

    • 없음

     

    [사용법]

    • 소스 코드 예시 참조

     

    [사용 OS]

    • Windows 10

     

    [사용 언어]

    • R v3.6.2

    • R Studio v1.2.5033

     

     소스 코드

    [tidyr]

    • tidyr는 데이터 프레임 (정확하게는 tibble 형의 객체)의 나열을 확장하거나 통합 할 때 사용하는 함수가 많이 준비되어있다. 

    • 즉 reshape2 패키지의 향상된 버전이라고 볼 수 있다.

    • 본 글에서는 tidyr 패키지의 기능을 설명하기 위해 iris 데이터 세트를 사용한다.

    • 이 데이터 세트는 다음과 같이 150 행 5 열의 데이터프레임이다.

    iris <- read.table('data/iris.txt', header = TRUE, sep = '\t')
    head(iris)
    ##   ID Sepal.Length Sepal.Width Petal.Length Petal.Width Species
    ## 1  1          5.1         3.5          1.4         0.2  setosa
    ## 2  2          4.9         3.0          1.4         0.2  setosa
    ## 3  3          4.7         3.2          1.3         0.2  setosa
    ## 4  4          4.6         3.1          1.5         0.2  setosa
    ## 5  5          5.0         3.6          1.4         0.2  setosa
    ## 6  6          5.4         3.9          1.7         0.4  setosa

     

    [tidyr -gather 함수]

    • gather함수는 데이터 프레임을 축소 할 때 사용한다.

    • 예를 들어, 암술과 수술의 길이와 너비를 attribute로 그 값을 value로 축소하는 경우 아래와 같이 작성할 수 있다.

    iris.df <- iris %>% gather(`Sepal.Length`, `Sepal.Width`, `Petal.Length`, `Petal.Width`,
                               key = 'attribute', value = 'length')
    head(iris.df)
    ##   ID Species    attribute length
    ## 1  1  setosa Sepal.Length    5.1
    ## 2  2  setosa Sepal.Length    4.9
    ## 3  3  setosa Sepal.Length    4.7
    ## 4  4  setosa Sepal.Length    4.6
    ## 5  5  setosa Sepal.Length    5.0
    ## 6  6  setosa Sepal.Length    5.4

     

    [tidyr -spread 함수]

    • 축소 된 데이터 프레임을 특정 열을 기준으로 확장하고 싶을 때는 spread함수를 사용한다.

    iris.spreaded <- iris.df %>% spread(key = 'attribute', value = 'length')
    head(iris.spreaded)
    ##   ID Species Petal.Length Petal.Width Sepal.Length Sepal.Width
    ## 1  1  setosa          1.4         0.2          5.1         3.5
    ## 2  2  setosa          1.4         0.2          4.9         3.0
    ## 3  3  setosa          1.3         0.2          4.7         3.2
    ## 4  4  setosa          1.5         0.2          4.6         3.1
    ## 5  5  setosa          1.4         0.2          5.0         3.6
    ## 6  6  setosa          1.7         0.4          5.4         3.9

     

    [다음글]

    • 준비중

     

    [이전글]

     

    [R] R을 이용한 통계 분석 및 데이터 시각화 : ggplot2 (유효숫자 표시)

    정보 업무명 : R을 이용한 통계 분석 및 데이터 시각화 : ggplot2 (유효숫자 표시) 작성자 : 박진만 작성일 : 2020-04-07 설 명 : 수정이력 : 내용 [개요] R은 통계 분석 및 시각화 등의 기능을 갖춘 프로그래밍..

    shlee1990.tistory.com

     

     참고 문헌

    [논문]

    • 없음

    [보고서]

    • 없음

    [URL]

    • 없음

     

     문의사항

    [기상학/프로그래밍 언어]

    • sangho.lee.1990@gmail.com

    [해양학/천문학/빅데이터]

    • saimang0804@gmail.com

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    본 블로그는 파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음
    • 네이버 블러그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기