[R4DS] [3-2] 결측값

2024. 4. 3. 10:56· DS Study/R4DS(R언어)
목차
  1. 1. 결측값
  2. 2. 연습문제

1. 결측값

- 데이터셋에서 이상값을 발견하고 다음 분석으로 넘어가고자 할 때, 다음의 두가지 옵션이 존재함

 

1) 이상값이 포함된 행 전체를 삭제한다.

diamonds2 <- diamonds %>%
    filter(between(y,3,20))

-하나의 측정값이 유효하지 않다고 해서 모든 측정값이 유효하지 않은 것은 아니므로

-해당 옵션은  권장하지 않는다.

- 저품질의 데이터가 있을 때마다 모든 변수에 대해서 이 방법을 적용하게 된다면

- 어떤 데이터도 남아있지 않게 될 것이다.

 

2)이상값을 결측값으로 변경한다.(권장)

- mutate()를 사용하여 변수를 수정된 복사값으로 대체가능하다

--> ifelse()함수를 사용하면 이상값을 NA로 바꿀수 있다.

diamonds2 <- diamonds %>%
    mutate(y = ifelse(y<3 | y>20 , NA , y))

-ifelse()는 세 개의 인수를 갖는다.

i) 첫번째 인수 : 논리형 벡터

ii) 두번째 인수 : 논리형 벡터가 TRUE이면 두번째인수가 return된다.

iii) 세번째 인수 : 논리형 벡터가 FALSE이면 세번째 인수가 return된다. 

ggplot(data=diamonds2,mapping = aes(x=x , y=y)) + 
    geom_point()

2. 연습문제

Q1) Q1-1)히스토그램에서 결측값을 어떻게 처리하는가? Q1-2)막대그래프에서는 어떻게 처리하는가? Q1-3)처리 방법이 서로 다른이유는 무엇인가?

 

-Q1-1) : R언어에서 히스토그램을 그리는 함수는 기본적으로 결측값으 무시하고 히스토그램을 생성함

--> 즉, 결측값은 히스토글매에 표시되지 않음

 

-Q1-2) : 막대그래프에서 결측값을 처리하는 방법 : 

- 막대 그래프를 그리는 geom_bar()는 결측값이 있는 카테고리는 무시하고 막대그래프를 생성

--> 즉, 결측값이 있는 카테고리는 막대그래프에 표시되지 않음

 

-Q1-3)처리 방식이 서로 다른 이유:

- geom_histogram : 연속형

- geom_bar() : 범주형

--> 처리하는 데이터의 속성이 다르기 때문에 처리방식이 달라진다.

 

Q2) mean()과 sum()함수에서 na.rm= TRUE는 무슨 역할을 하는가?

--> 결측값을 무시하는 역할을 하게 된다. 

--> 즉 그냥 공백취급한다. 

'DS Study > R4DS(R언어)' 카테고리의 다른 글

[R4DS] [4] tibble로 하는 티블  (0) 2024.04.04
[R4DS] [3-3] 공변동  (0) 2024.04.03
[R4DS] [3-1] 탐색적 데이터 분석(EDA)  (0) 2024.04.01
[R4DS] [2-6] summarize()  (0) 2024.04.01
[R4DS] [2-5] mutate()  (0) 2024.03.31
  1. 1. 결측값
  2. 2. 연습문제
'DS Study/R4DS(R언어)' 카테고리의 다른 글
  • [R4DS] [4] tibble로 하는 티블
  • [R4DS] [3-3] 공변동
  • [R4DS] [3-1] 탐색적 데이터 분석(EDA)
  • [R4DS] [2-6] summarize()
23학번이수현
23학번이수현
23학번이수현
밑바닥부터 시작하는 AI보안전문가
23학번이수현
전체
오늘
어제
  • 분류 전체보기 (242)
    • Statistic Study (47)
      • Mathematical Statistics(수리통.. (47)
    • Mathematics Study (15)
      • Linear Algebra (선형대수학) (15)
    • CS Study (73)
      • CLRS (자료구조 | 알고리즘) (49)
      • Database(DB) (11)
      • C++ (11)
      • 컴퓨터 구조 (2)
    • DS Study (56)
      • CS 229(Machine Learning) (19)
      • CS 224n(NLP) (5)
      • Web Scraping (7)
      • R4DS(R언어) (20)
      • 밑바닥부터 시작하는 딥러닝 1 (5)
    • Hacking Study (0)
      • Web Hacking (0)
    • 코딩테스트 (5)
      • 백준-Python (5)
    • Paper Review(논문 리뷰) (43)
      • Deep Learning (16)
      • TCGA 관련 논문 (4)
      • Computer Vision (18)
      • NLP (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • deep learning
  • 백준
  • 파이썬
  • clrs
  • web scraping
  • 선형대수학
  • Machine Learning
  • 시간복잡도
  • 정렬
  • LSTM
  • 데이터분석
  • NLP
  • db
  • introduction to algoritmhs
  • cs229
  • 딥러닝
  • Linear Algebra
  • Introduction to Algorithms
  • Algorithms
  • R4DS
  • Data Structure
  • graph
  • 수리통계학
  • AI
  • C++
  • cs 224n
  • 논문 리뷰
  • 자료구조
  • R언어
  • 알고리즘

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
23학번이수현
[R4DS] [3-2] 결측값
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.