일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 상합
- 블록코딩
- counting sunday
- 프랙탈
- 확률실험
- 정오각형
- 큰 수의 법칙
- 구분구적법
- 오일러
- 수학탐구
- 알지오매스
- 파이썬
- 몬테카를로
- 삼각함수의그래프
- project euler
- python
- 큰수의법칙
- 이항분포
- 제곱근의뜻
- 재귀함수
- 프로젝트 오일러
- algeomath
- 지오지브라
- 리만합
- 시뮬레이션
- Geogebra
- 하합
- java
- 피타고라스 정리
- 작도
Archives
- Today
- Total
이경수 선생님의 수학실험실
Subsetting_Removing Missing Values 본문
is.na( ) 함수로 TRUE에 해당하는 결측값을 찾아내 이를 제거할 수 있다.
> x<-c(1,2,NA,4,5,NA)
> dim(x)<-c(2,3)
> x
[,1] [,2] [,3]
[1,] 1 NA 5
[2,] 2 4 NA
> is.na(x)
[,1] [,2] [,3]
[1,] FALSE TRUE FALSE
[2,] FALSE FALSE TRUE
> bad<-is.na(x)
> x[bad]
[1] NA NA
> x[!bad]
[1] 1 2 4 5
두 벡터에서 대응하는 두 수끼리 서로 곱해야 하는 경우, 둘 중 적어도 하나가 결측값이면 곱셈을 할 수 없다. 이때, complete.cases( ) 함수를 사용하여 두 값 중 하나라도 결측값인 경우를 골라낼 수 있다.
> x<-c(1,2,NA,4,NA,6,7)
> y<-c(3,NA,NA,2,1,9,NA)
> ma<-complete.cases(x,y)
> ma
[1] TRUE FALSE FALSE TRUE FALSE TRUE FALSE
> x[ma]
[1] 1 4 6
> y[ma]
[1] 3 2 9
complete.cases( ) 함수에 대한 예제
> airquality[1:10,]
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6
7 23 299 8.6 65 5 7
8 19 99 13.8 59 5 8
9 8 19 20.1 61 5 9
10 NA 194 8.6 69 5 10
> good<-complete.cases(airquality)
> airquality[good,][1:10,]
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
7 23 299 8.6 65 5 7
8 19 99 13.8 59 5 8
9 8 19 20.1 61 5 9
12 16 256 9.7 69 5 12
13 11 290 9.2 66 5 13
14 14 274 10.9 68 5 14
'R' 카테고리의 다른 글
Control Structure_if else & for loops (0) | 2021.04.15 |
---|---|
Control Structures_While loops (0) | 2021.04.15 |
Subsetting_Partial Matching (0) | 2021.04.15 |
Subsetting_Matrices (0) | 2021.04.15 |
Subsetting_Lists (0) | 2021.04.15 |
Comments