SW/R

R : 벡터 연산, 함수, 논리값 개념 및 예제

얇은생각 2019. 1. 30. 07:30
반응형

벡터에 대한 산술 연산

d <- c(1,4,3,7,8)
2*d
# 2 8 6 14 16
d-5
# -4 -1 -2 2 3
3*d + 4
# 7 16 13 25 28

벡터는 위와 같이 산술 연산이 됩니다.  보시다시피 모든 요소에 그 값이 처리되는 원리입니다.



벡터 간 연산

두 벡터의 연결

x <- c(1,2,3)
y <- c(4,5)
c(x,y) # 단순히 x,y 를 연결하여 출력
# 1 2 3 4 5
z <- c(x,y) # x,y 를 연결하여 z에 저장

위 방식을 활용하면 벡터의 값을 연결할 수 있습니다. 또 다양한 방식으로 벡터 값을 변형해 데이터를 처리할 수 있겠죠?



두 벡터의 합

x <- c(1,2,3) # x에 벡터 입력
y <- c(4,5,6) # y에 벡터 입력
x+y # 대응하는 원소끼리 + 하여 출력
# 5 7 9
z <- x + y # x,y 를 더하여 z에 저장

벡터끼리 연산을 하려면 기본조건이 있습니다. 벡터의 길이가 같아야 합니다. 즉 길이가 다르면 에러나 납니다. 길이만 같으면 사칙연사 모두 적용이 가능합니다.



벡터에 적용 가능한 함수들

 함수명 

 설명

 sum() 

 자료의 합

 mean() 

 자료의 평균

 median() 

 자료의 중앙값

 max(), min() 

 자료의 최대, 최소값 

 var()

 자료의 분산 값

 sd() 

 자료의 표준편차

 sort() 

 자료를 정렬하여 출력 

 range() 

 자료의 범위 (최대값 ~ 최소값)

 length() 

 자료의 개수

벡터에는 다양한 함수들이 있습니다. 위와 같은 함수를 활용하면 직접 식을 세우지 않습니다. 따라서 빠르고 편리하게 값을 출력합니다. 아래 예제를 참고하세요.


d <- c(1,2,3,4,5,6,7,8,9,10)
sum(d) # 55
sum(2*d) # 110
length(d) # 10
mean(d[1:5]) # 3
max(d)# 10
min(d)# 1
sort(d) # 올림차순 정렬
# 1 2 3 4 5 6 7 8 9 10
sort(d, decreasing = FALSE) # 올림차순 정렬
# 1 2 3 4 5 6 7 8 9 10
sort(d, decreasing = TRUE) # 내림차순 정렬
# 10 9 8 7 6 5 4 3 2 1
v1 <- median(d)
v1 # 5.5
v2 <- sum(d)/length(d)
v2 # 5.5
d <- c(1,2,3,4,5,6,7,8,9,10)
sum(d) # 55
sum(2*d) # 110
length(d) # 10
mean(d[1:5]) # 3
max(d) # 10
min(d) # 1
sort(d) # 올림차순 정렬
# 1 2 3 4 5 6 7 8 9 10
sort(d, decreasing = FALSE) # 올림차순 정렬
# 1 2 3 4 5 6 7 8 9 10
sort(d, decreasing = TRUE) # 내림차순 정렬
# 10 9 8 7 6 5 4 3 2 1
v1 <- median(d)
v1 # 5.5
v2 <- sum(d)/length(d)
v2 # 5.5

 


함수(function)

함수

d <- c(1,2,3,4,5,6,7,8,9,10)
sort(d, decreasing = FALSE)

함수를 제대로 이해하는 것이 R에서 매우 중요합니다. 함수는 크게 3가지를 기억하시면 됩니다. 함수명, 매개변수 이름, 매개변수 값입니다. sort가 함수명이겠죠? 그리고 d와 FALSE는 매개변수 값입니다. decreasing이 매개변수 이름에 해당합니다. 보통 우리가 말하는 매개변수는 파라미터를 의미합니다.



함수(function) 의 호출

v1 <- c(4,2,3,1,6,10,8,9)
sort(x = v1, decreasing = TRUE)
# 10 9 8 6 4 3 2 1
sort(v1, FALSE)
# 1 2 3 4 6 8 9 10
sort(v1) # decreasing = FALSE
# 1 2 3 4 6 8 9 10

함수를 작성할 때 매개변수가 아래와 같이 유의해서 작성해야합니다.

함수명(매개변수명1=값1, 매개변수명2=값2)

만약 필수적인 매개변수가 아니라면 입력하지 않아도 함수는 작동합니다. 작동하는 이유는 바로 default 값 때문입니다. 미리 정의된 기본값이 처리되는 것입니다.

반응형