# exam05)주어진 데이터셋에서 'charges' 변수의 이상치의 합을 구하시오
# 이상치는 평균에서 1.5*표준편차 벗어나는 값을 의미한다.
library(dplyr)
## Warning: 패키지 'dplyr'는 R 버전 4.1.3에서 작성되었습니다
## 
## 다음의 패키지를 부착합니다: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
insurance<-read.csv("insurance.csv")

# ① 평균과 표준편차를 구하기 위해 결측치를 확인한다.
colSums(is.na(insurance))
##      age      sex      bmi children   smoker   region  charges 
##        0        0        0        0        0        0        0
sum(is.na(insurance$charges))
## [1] 0
avg=mean(insurance$charges)
sd=sd(insurance$charges)
# ② 이상치의 범위를 설정하고 합을 구한다.
insurance1<-insurance %>% filter(charges>=avg+1.5*sd|charges<=avg-1.5*sd)
sum(insurance1$charges) 
## [1] 6421430
NROW(insurance$charges)
## [1] 1338