두 개의 벡터를 더하거나 빼거나 곱하기
> vec01 <- c(1,2,3,4,5) # 벡터 vec01 을 만들기
> v100 <- c(100,200,300,400,500) # 벡터 v100을 만들기
> vec01+3 # 벡터의 각 요소에 3을 더하기
> vec01*3 # 벡터의 각 요소에 3을 곱하기
> vec01+v100 # 두 벡터 더하기
> vec01-v100 # 두 벡터 빼기
> vec01*v100 # 두 벡터 곱하기
> vec01/v100 # 두 벡터 나누기
※ 벡터의 차수가 다른 경우
> v400 <- c(100,200,300,400)
> v3 <- vec01+v400 # 길이가 다른 벡터 더하기 101, 202,303,404, 105 -- 5+100
> v3
벡터의 통계량 구하기
벡터에 대하여 각종 함수를 이용하여 통계량을 계산할 수 있습니다.
벡터에 사용되는 함수는 행렬과 배열 등에 사용할 수 있습니다.
최빈값을 나타내는 mode 는 벡터의 속성을 구하는 함수로 사용되며, 최빈값을 구할 수 없습니다.
함수명 기능
sum(vec01) 합계구하기
mean(vec01) 평균구하기
vec01-mean(vec01) 평균과의 차이구하기
median(vec01) 중앙값 구하기
min(vec01) 최소값 구하기
max(vec01) 최대값 구하기
sd(vec01) 표준편차 구하기
var(vec01) 분산 구하기
range(vec01) 최소값과 최대값 구하기
diff(range(vec01)) 범위구하기
quantile(vec01) 4분위수 구하기
IQR(vec01) 4분위수 범위 Q3-Q1
summary(vec01) 요약통계 구하기
(1) 평균, 합계, 중앙값, 최소값, 최대값 구하기
> vec01 <- c(1,2,3,4,5,6,7,8,9,10) # 1부터 10까지 벡터 vec01을 만든다
> sum(vec01) # 벡터 vec01 의 합계를 구합니다
[1] 55
> mean(vec01) # [1] 5.5
> vec01-mean(vec01) # [1] -4.5 -3.5 -2.5 -1.5 -0.5 0.5 1.5 2.5 3.5 4.5
> median(vec01)
[1] 5.5
> min(vec01)
[1] 1
> max(vec01)
[1] 10
> sd(vec01)
[1] 3.02765
> var(vec01)
[1] 9.166667
> range(vec01)
[1] 1 10
> diff(range(vec01))
[1] 9
> quantile(vec01)
0% 25% 50% 75% 100%
1.00 3.25 5.50 7.75 10.00
> IQR(vec01)
[1] 4.5
> summary(vec01)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.00 3.25 5.50 5.50 7.75 10.00
(2) 분산 구하기
분산을 구하는 함수는 var 입니다.
vec01 <- c(1,2,3,4,5,6,7,8,9,10)
var(vec01)
[1] 9.166667
이를 분산을 구하는 공식을 이용하여 구해 봅니다.
분산은 이므로 다음과 같이 mean 함수를 이용하여 평균(mv)을 구하고,
이를 원래의 값에서 뺀 편차의 제곱합을 구한 다음 샘플수(length(vec01))에서 1을 뺀 값으로 나누면 됩니다.
mv <- mean(vec01)
sv <- sum((vec01-mv)^2)/(length(vec01)-1)
sv
> sv
[1] 9.166667
'R연습 200제 > 02_00. (R)데이터객체,벡터,행렬' 카테고리의 다른 글
(R1)제03강(3.2) 행렬 연산 하기 - 행렬 +/-, 기술통계량, apply 사용하기 (0) | 2020.07.25 |
---|---|
(R1)제03강(3.1) 행렬 다루기 - 행렬 만들기, 속성 살펴보기, 요소 접근하기 (0) | 2020.07.25 |
(R1)제03강(1.3) 벡터의 요소에 접근하기 (0) | 2020.07.25 |
(R1)제03강(2.2) 벡터 다루기 (0) | 2020.07.25 |
제4강 4.0 데이터객체(2) 목차 - 데이터프레임, 리스트, 팩터(factor) (0) | 2020.07.14 |