머신러닝/R
논리연산자, ifelse, table
오지고지리고알파고포켓몬고
2017. 3. 26. 18:39
# 논리연산자
logical <- num1 >= 50 & num2 <=10 # 두 관계식이 같은지 판단
logical # FALSE
logical <- num1 >= 50 | num2 <=10 # 두 관계식 중 하나라도 같은지 판단
logical # TRUE
logical <- num1 >= 50 # 관계식 판단
logical # TRUE
logical <- !(num1 >= 50) # 괄호 안의 관계식 판단 결과에 대한 부정
logical # FALSE
x <- TRUE; y <- FALSE
xor(x,y) # [1] TRUE
x <- TRUE; y <- TRUE
xor(x,y) # [1] FALSE
#ifelse() 응용
excel <- read.csv("D:/Rwork/Part-I/excel.csv", header = T)
head(excel)
str(excel)
#'data.frame': 402 obs. of 5 variables:
q5 <- excel$q5 # 5점 척도(설문지! 1~5의 범위)
result <- ifelse(q5 >= 3, '큰 값','작은 값') # binary data
result
table(result) # 범주의 개수
excel$q55<-result
# NA -> 평균 치환
x <- c(75,85,NA,95,75)
x
ifelse(is.na(x), mean(x, na.rm=TRUE), x)