[R] 데이터의 구조를 plot으로 확인할 수 있는 "visdat" 패키지 소개

 정보

  • 업무명     : 데이터 구조를 plot으로 확인할 수 있는 "visdat" 패키지 소개

  • 작성자     : 박진만

  • 작성일     : 2020-03-03

  • 설   명      :

  • 수정이력 :

 

 내용

[특징]

  • 데이터의 구조를 시각적으로 확인할 수 있는 "visdat" 패키지를 소개한다.

 

 

[기능]

  • visdat 패키지 소개

 

[활용 자료]

  • 없음

 

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

  • 없음

 

[사용법]

  • 소스 코드 예시 참조

 

[사용 OS]

  • Windows 10

 

[사용 언어]

  • R v3.6.2

  • R Studio v1.2.5033

 

 소스 코드

[명세]

  • 전역 설정

    • 최대 10 자리 설정

    • 메모리 해제

# Set Option
options(digits = 10)
memory.limit(size = 9999999999999)

 

  • 라이브러리 읽기

# Library Load
library(visdat)

 

  • Data Frame 설정

    • 데이터 프레임 생성

### 데이터프레임 예시 #####
n <- 300
TestData <- data.frame("Group" = factor(sample(paste0("Group", 1:3), n, replace = TRUE)),
                       "Data1" = sample(c(rnorm(3), NA), n, replace = TRUE),
                       "Data2" = sample(c(rnorm(3), NA), n, replace = TRUE),
                       "Character" = sample(c("ABC", "CDE", NA), n, replace = TRUE),
                       "Logical" = rep(c(TRUE, NA), each = n/2),
                       stringsAsFactors = FALSE)

 

  • 데이터 타입 및, 결측치 확인을 위해 "vis_dat" 명령어를 사용함

  • 색 팔레트 지정 : palette = "default" -> 기본설정

  • 데이터 정렬 설정 : sort_type = FALSE  -> 정렬하지 않음

vis_dat(x = TestData, palette = "default", sort_type = FALSE)

각 컬럼별로 데이터의 구조를 확인할 수 있음.

 

  •  결측치의 출현 비율을 표시 -> vis_miss 명령어를 사용함

  •  결측치의 출현 비율이 높은 순서대로 표시 -> sort_miss (TRUE / FALSE 옵션을 지정할 수 있음)

vis_miss(x = TestData, sort_miss = TRUE)

결측치의 출현비율을 확인

 

  • 조건에 해당하는지 시각화 -> vis_expect 명령어 사용

  • 조건식 설정 -> expectation; ~ .x 을 통해 선택 변수 설정 (x를 제외한 모든 변수 선택한다는 의미)

  • 해당 데이터 비율을 표시 : show_perc

vis_expect(data = TestData, 
           expectation = ~.x %in% !NA,
           show_perc = TRUE)

조건에 해당하는 데이터의 비율 확인

 

데이터의 동일성을 확인 -> vis_compare 명령

본문에서는 비교용 데이터를 만들어 일부분을 변조시킨 후 비교

# 데이터의 동일성을 표시 : vis_compare 명령
### 비교 용 데이터를 준비 #####
Data2 <- TestData
Data2[50:199, 3] <- sample(c(rnorm(3), NA), 150, replace = TRUE)
#####
vis_compare(TestData, Data2)

 

[전체]

library(visdat)

#パッケージの読込み
library("visdat")

### 데이터프레임 예시 #####
n <- 300
TestData <- data.frame("Group" = factor(sample(paste0("Group", 1:3), n, replace = TRUE)),
                       "Data1" = sample(c(rnorm(3), NA), n, replace = TRUE),
                       "Data2" = sample(c(rnorm(3), NA), n, replace = TRUE),
                       "Character" = sample(c("ABC", "CDE", NA), n, replace = TRUE),
                       "Logical" = rep(c(TRUE, NA), each = n/2),
                       stringsAsFactors = FALSE)

head(TestData)
summary(TestData)

# 데이터 타입, 결손치보기 : vis_dat 명령
# 색을 지정 : palette; "default", "qual", "cb_safe"
# 데이터 정렬 : sort_type; FALSE로 원본 데이터 순서
vis_dat(x = TestData, palette = "default", sort_type = FALSE)

# 결손치의 출현 비율을 표시 : vis_miss 명령
# 결손치의 출현 비율이 높은 순서대로 표시 : sort_miss; TRUE / FALSE
vis_miss(x = TestData, sort_miss = TRUE)

# 조건에 해당하는지 시각화 : vis_expect 명령
# 조건식을 설정 : expectation; ~ .x 조건식 설정
# 해당 데이터 비율을 표시 : show_perc
vis_expect(data = TestData, 
           expectation = ~.x %in% !NA,
           show_perc = TRUE)


# 데이터의 동일성을 표시 : vis_compare 명령
### 비교 용 데이터를 준비 #####
Data2 <- TestData
Data2[50:199, 3] <- sample(c(rnorm(3), NA), 150, replace = TRUE)
#####
vis_compare(TestData, Data2)

 

 참고 문헌

[논문]

  • 없음

[보고서]

  • 없음

[URL]

  • 없음

 

 문의사항

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

  • sangho.lee.1990@gmail.com

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

  • saimang0804@gmail.com