
제 1 유형
- 데이터셋 : airquality (R data set)
- 주어진 데이터는 153일동안 공기의 질을 측정한 데이터셋이다.
| 컬럼 | 설명 |
| Ozone | 오존 농도 |
| Solar.R | 태양 복사 강도 |
| Wind | 평균 풍속 |
| Temp | 최대 온도 |
| Month | 월 |
| Day | 일 |
1. airquality 데이터에 대해서 결측치가 가장 많은 변수를 찾아 해당 결측치를 0 으로 대치하고,
결측치를 제외한 평균과 0 으로 대치한 후 평균과의 차이를 구하시오.
library(dplyr)
library(ggplot2)
# 1번
data(airquality)
df <- airquality
head(df)
summary(df) # Ozone 의 결측치가 37 개로 가장 많음.
df_new <- df
df_new$Ozone <- ifelse(is.na(df$Ozone),0,df$Ozone) # 결측치 0으로 대치
mean_1 <- mean(df$Ozone, na.rm=TRUE)
mean_2 <- mean(df_new$Ozone)
mean_1 - mean_2 # 두 평균의 차이

2. Wind 변수에 대해 Min-Max 정규화를 수행한 후 평균값과 Z 정규화를 수행한 후 평균 값의 차이를 구하시오.
# 2번
a <- (df$Wind - min(df$Wind))/(max(df$Wind)-min(df$Wind)) # Min-Max 정규화
b <- (df$Wind - mean(df$Wind)) / sd(df$Wind) # Z - 정규화
df_new <- transform(df, minmax=a, zscore=b)
summary(df_new)
mean(df_new$minmax) - mean(df_new$zscore)

3. 월별 (5월~9월) 평균 기온을 구하시오.
# 3번
df_new %>% group_by(df_new$Month) %>% summarise(mean(Temp,na.rm=TRUE))
- 그룹별 통계는 group_by() 함수를 사용하여 구할 수 있다.
- 월별 평균기온은 Month 컬럼을 기준으로 group_by() 함수를 적용해서 Temp 의 평균을 구한다.

제 2 유형
- 데이터셋 : cars (R data set)
R 에서 제공하는 데이터 중 차량의 속도와 정지거리에 대한 데이터셋이다.
cars 를 이용하여 제동거리와 스피드에 대한 선형회귀 예측모형을 만들고 이에 따른 회귀식과 회귀식이 표현된 시각화결과를 도출하시오. 또한 스피드가 20 일 때 제동거리가 얼마나 되는지를 예측하시오.
data(cars)
df <- cars
summary(df)
# cor.test(df$dist, df$speed) # p-value < 0.05 ; 선형성 있음 ; 선형성을 가지는 데이터로 판단하여 선형회귀분석 실시
model <- lm(df$dist ~ df$speed)
summary(model)
plot(df$speed, df$dist)
abline(coef(model))
# 데이터 분석식에 의한 예측결과
data(cars)
a <- lm(dist ~ speed, cars)
predict.lm(a,newdata=data.frame(speed=20)) # ★ newdata

'자격증 > 빅데이터 분석기사' 카테고리의 다른 글
| 로지스틱회귀(분류) in R (0) | 2022.11.25 |
|---|---|
| SVM in R (0) | 2022.11.25 |
| KNN in R (0) | 2022.11.25 |
| 의사결정나무 in R (1) | 2022.11.25 |
| 모의고사 2 (0) | 2022.11.25 |