1. 중심위치 측정(mean, median, max, min, sample)
- Killxxi
- Study of GifMan/R of GifMan
- 2019. 8. 6.
중심위치 측정¶
기술통계 의의¶
- 빅데이터 분석을 위해서는 기존 사실에 대한 객관적인 수치를 찾아내려는 기술 통계를 기초로 한다.
- 이를 통해서 데이터의 특징이 수량화되어 정리 된다.
- 분석자는 데이터에 대한 이해를 하게 되어 이후 분석과정을 정밀하게 설계 할 수 있게 된다.
weight <- c(72,67,60,78,82)
mean(weight)
71.8
myNum <- sample(x=1:100, size=100, replace = TRUE)
myNum
mean(myNum)
- 72
- 70
- 22
- 95
- 35
- 8
- 93
- 26
- 9
- 11
- 8
- 25
- 81
- 48
- 96
- 34
- 43
- 6
- 10
- 66
- 78
- 29
- 26
- 87
- 71
- 74
- 50
- 36
- 7
- 90
- 67
- 13
- 88
- 55
- 34
- 24
- 28
- 77
- 46
- 36
- 74
- 81
- 61
- 34
- 99
- 41
- 42
- 65
- 24
- 10
- 88
- 46
- 88
- 21
- 76
- 45
- 11
- 98
- 38
- 88
- 40
- 1
- 48
- 4
- 14
- 18
- 78
- 50
- 10
- 37
- 50
- 87
- 5
- 13
- 66
- 67
- 24
- 31
- 14
- 78
- 31
- 62
- 10
- 60
- 86
- 12
- 53
- 22
- 29
- 4
- 61
- 92
- 45
- 58
- 25
- 51
- 80
- 93
- 8
- 50
46.71
결측치가 있는 경우의 평균¶
- myNum 100개중 20%의 결측치를 만들어보자
- NA 는 없는 값이다. 연산시 NA 값이 나온다.
- NULL은 모르는 값이다. 연산시 NULL값을 제외하고 계산을 한다.
myNum[sample(x=1:100, size = 20, replace = FALSE)] # na는 없는 값, null은 모르는 값.
myNum
mean(myNum)
- 10
- 96
- 93
- 41
- 26
- 29
- 61
- 66
- 26
- 37
- 22
- 65
- 58
- 10
- 40
- 74
- 14
- 12
- 78
- 55
- 72
- 70
- 22
- 95
- 35
- 8
- 93
- 26
- 9
- 11
- 8
- 25
- 81
- 48
- 96
- 34
- 43
- 6
- 10
- 66
- 78
- 29
- 26
- 87
- 71
- 74
- 50
- 36
- 7
- 90
- 67
- 13
- 88
- 55
- 34
- 24
- 28
- 77
- 46
- 36
- 74
- 81
- 61
- 34
- 99
- 41
- 42
- 65
- 24
- 10
- 88
- 46
- 88
- 21
- 76
- 45
- 11
- 98
- 38
- 88
- 40
- 1
- 48
- 4
- 14
- 18
- 78
- 50
- 10
- 37
- 50
- 87
- 5
- 13
- 66
- 67
- 24
- 31
- 14
- 78
- 31
- 62
- 10
- 60
- 86
- 12
- 53
- 22
- 29
- 4
- 61
- 92
- 45
- 58
- 25
- 51
- 80
- 93
- 8
- 50
46.71
- 따라서 na.rm = TRUE 옵션 설정이 가능하다.
mean(myNum, na.rm = TRUE)
46.71
sales <- c(95,72,87,65)
weights <- c(0.5, 0.25, 0.125, 0.125)
mean(sales)
weighted.mean(sales, weights)
79.75
84.5
A.score <- c(4.0, 3.0)
B.score <- c(3.0, 4.0)
count <- c(3,2)
weight <- count / sum(count)
weighted.mean(A.score, weight)
weighted.mean(B.score, weight)
3.6
3.4
score <- c(90,80,70,60)
count <- c(3,12,15,5)
weight <- count/sum(count)
weighted.mean(score,weight)
73.7142857142857
# 중앙값 데이터가 홀수개 인 경우
time <- c(7,2,3,7,6,9,10,8,9,9,10)
mean(time)
median(time)
7.27272727272727
8
# 중앙값 데이터가 짝수개 인 경우
time <- c(7,2,3,7,6,9,10,8,9,10)
median(time)
summary(time) # 평균과 중앙값을 함께 볼 수 있다.
7.5
Min. 1st Qu. Median Mean 3rd Qu. Max.
2.00 6.25 7.50 7.10 9.00 10.00
num.v <- c(1,2,2,3,4,3,5,5,7,9,2,2,0)
char.v <- c("o","it","the","it","it","가","가","가","가","가")
freq <- table(num.v) # 테이블을 만들어 빈도수를 보여준다.
freq
which.max(freq) # 가장큰 빈도를 갖는 것은 2 이고, 2는 3번째 원소 이다.
names(freq)[3]
num.v
0 1 2 3 4 5 7 9
1 1 4 2 1 2 1 1
2: 3
'2'
freq <- table(char.v)
freq
which.max(freq)
names(freq)[4]
char.v
it o the 가
3 1 1 5
가: 4
'가'
x <- c("a","b","c","c","c","d","d")
table(x)
x
a b c d
1 1 3 2
x <- c(1,2,3,NA,4)
which.max(x)
which.min(x)
5
1
x <- c(1,2,3,NA,4)
max(x,na.rm=TRUE)
min(x,na.rm=TRUE)
4
1
# 1. 이론적으로 예상할 수 있는 평균과 표준편차는 얼마인가 ?
x <- c(1,2,3,4,5,6)
mean(x)
var(x)
3.5
3.5
# 2. 주사위를 10번 던졌을 때 평균과 표준편차를 구하시오
two <-sample(x=1:6, size= 10, replace = TRUE)
two
mean(two)
var(two)
- 4
- 1
- 1
- 4
- 5
- 4
- 4
- 4
- 5
- 3
3.5
2.05555555555556
# 3. 주사위를 100번 던졌을 때 평균과 표준편차를 구하시오
three <- sample(x=1:6, size = 100, replace = TRUE)
three
mean(three)
var(three)
# 4. 1,2,3에서 각각 구한 값을 비교하여, 값의 차이가 나는 이유를 설명하시오.
- 5
- 5
- 3
- 6
- 5
- 4
- 3
- 5
- 2
- 6
- 1
- 6
- 4
- 6
- 4
- 1
- 4
- 2
- 6
- 6
- 4
- 3
- 6
- 6
- 1
- 1
- 3
- 5
- 6
- 3
- 3
- 3
- 2
- 4
- 6
- 3
- 4
- 5
- 5
- 5
- 6
- 5
- 1
- 1
- 4
- 5
- 4
- 5
- 3
- 3
- 4
- 4
- 2
- 4
- 1
- 2
- 5
- 3
- 5
- 1
- 1
- 3
- 1
- 5
- 6
- 5
- 6
- 3
- 5
- 5
- 5
- 2
- 6
- 6
- 4
- 1
- 6
- 1
- 6
- 3
- 1
- 4
- 6
- 5
- 3
- 4
- 3
- 2
- 4
- 3
- 1
- 3
- 6
- 1
- 2
- 2
- 1
- 1
- 1
- 6
3.69
3.08474747474747
setwd("C:/Users/KIIXXI/Documents/khu")
Data <- read.csv("train.csv")
head(Data)
PassengerId | Survived | Pclass | Name | Sex | Age | SibSp | Parch | Ticket | Fare | Cabin | Embarked |
---|---|---|---|---|---|---|---|---|---|---|---|
<int> | <int> | <int> | <fct> | <fct> | <dbl> | <int> | <int> | <fct> | <dbl> | <fct> | <fct> |
1 | 0 | 3 | Braund, Mr. Owen Harris | male | 22 | 1 | 0 | A/5 21171 | 7.2500 | S | |
2 | 1 | 1 | Cumings, Mrs. John Bradley (Florence Briggs Thayer) | female | 38 | 1 | 0 | PC 17599 | 71.2833 | C85 | C |
3 | 1 | 3 | Heikkinen, Miss. Laina | female | 26 | 0 | 0 | STON/O2. 3101282 | 7.9250 | S | |
4 | 1 | 1 | Futrelle, Mrs. Jacques Heath (Lily May Peel) | female | 35 | 1 | 0 | 113803 | 53.1000 | C123 | S |
5 | 0 | 3 | Allen, Mr. William Henry | male | 35 | 0 | 0 | 373450 | 8.0500 | S | |
6 | 0 | 3 | Moran, Mr. James | male | NA | 0 | 0 | 330877 | 8.4583 | Q |
# 1. survived의 평균 값은 얼마인가 ?
mean(Data$Survived)
0.383838383838384
# 2. 탑승객의 나이에 대한 평균, 분산, 표준 편차를 구하시오.
mean(Data$Age, na.rm =TRUE)
var(Data$Age, na.rm =TRUE)
sd(Data$Age, na.rm =TRUE)
29.6991176470588
211.019124746308
14.526497332334
'Study of GifMan > R of GifMan' 카테고리의 다른 글
3. 데이터의 위치(사분위수, Barplot, 계급, 급간, 도수분포표) (0) | 2019.08.06 |
---|---|
2. 자료의 분산 (범위, 분산, 표준편차) (0) | 2019.08.06 |
3. R 데이터 파일 관리 (setwd, getwd, write) (0) | 2019.08.06 |
2. R 데이터 구조 (벡터, 행렬, 리스트, 배열, 데이터프레임) (0) | 2019.08.06 |
1. R 프로그램 시작하기 (0) | 2019.08.06 |