R에서 inf 값을 na로 바꾸는 방법
다음 방법을 사용하여 Inf 값을 R의 NA 값으로 바꿀 수 있습니다.
방법 1: Inf를 벡터의 NA로 대체
x[is. infinite (x)] <- NA
방법 2: 데이터 프레임의 모든 열에서 Inf를 NA로 교체
df[sapply(df, is. infinite )] <- NA
방법 3: 데이터 프레임의 특정 열에서 Inf를 NA로 교체
df[c(' col1 ', ' col2 ')][sapply(df[c(' col1 ', ' col2 ')], is. infinite )] <- NA
이 튜토리얼에서는 다음 데이터 프레임을 사용하여 실제로 각 방법을 사용하는 방법을 설명합니다.
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
position=c('G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'),
points=c(10, 10, 8, 14, 15, 15, 17, 17))
#view data frame
df
team position points
1 AG 10
2 AG 10
3AF 8
4 AF 14
5 BG 15
6 BG 15
7 BF 17
8 BF 17
예 1: 벡터에서 Inf를 NA로 대체
다음 코드는 모든 Inf 값을 벡터의 NA 값으로 바꾸는 방법을 보여줍니다.
#create vector with some Inf values
x <- c(4, 12, Lower, 8, Lower, 9, 12, 3, 22, Lower)
#replace Inf values with NA
x[is. infinite (x)] <- NA
#view updated vector
x
[1] 4 12 NA 8 NA 9 12 3 22 NA
원본 벡터의 모든 Inf 값이 NA 값으로 대체되었습니다.
예 2: 데이터 프레임의 모든 열에서 Inf를 NA로 대체
다음 코드는 데이터 프레임의 각 열에서 Inf 값을 NA 값으로 바꾸는 방법을 보여줍니다.
#create data frame
df <- data. frame (x=c(4, 5, 5, 4, Inf, 8, Inf),
y=c(10, Lower, Lower, 3, 5, 5, 8),
z=c(Inf, 5, 5, 6, 3, 12, 14))
#view data frame
df
X Y Z
1 4 10 Lower
2 5 Lower 5
3 5 Lower 5
4 4 3 6
5 Lower 5 3
6 8 5 12
7 Lower 8 14
#replace Inf values with NA values in all columns
df[sapply(df, is. infinite )] <- NA
#view updated data frame
df
X Y Z
1 4 10 NA
2 5 NA 5
3 5 NA 5
4 4 3 6
5 NA 5 3
6 8 5 12
7 NA 8 14
데이터 프레임의 각 열에 있는 Inf 값은 NA 값으로 대체되었습니다.
예 3: 데이터 프레임의 특정 열에서 Inf를 NA로 대체
다음 코드는 데이터 프레임의 특정 열에서 Inf 값을 NA 값으로 바꾸는 방법을 보여줍니다.
#create data frame
df <- data. frame (x=c(4, 5, 5, 4, Inf, 8, Inf),
y=c(10, Lower, Lower, 3, 5, 5, 8),
z=c(Inf, 5, 5, 6, 3, 12, 14))
#view data frame
df
X Y Z
1 4 10 Lower
2 5 Lower 5
3 5 Lower 5
4 4 3 6
5 Lower 5 3
6 8 5 12
7 Lower 8 14
#replace Inf values with NA values in columns 'x' and 'z' only
df[c(' x ', ' z ')][sapply(df[c(' x ', ' z ')], is. infinite )] <- NA
#view updated data frame
df
X Y Z
1 4 10 NA
2 5 Lower 5
3 5 Lower 5
4 4 3 6
5 NA 5 3
6 8 5 12
7 NA 8 14
“x” 및 “y” 열의 Inf 값이 NA 값으로 대체되었습니다.
그러나 “y”열의 Inf 값은 그대로 유지되었습니다.
추가 리소스
다음 튜토리얼에서는 R에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.