Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

천선생의 삶

[R] 데이터 유형에 따른 정리(1) - vector 본문

Data Analysis/R Basic

[R] 데이터 유형에 따른 정리(1) - vector

천선생 2019. 7. 5. 17:57

안녕하세요. 천선생입니다.



 이번 시리즈는 R을 활용하여 데이터를 분석하기 이전에 데이터의 유형 대해 알아볼건데요.

이 포스트는 특히 가장 기본이라고 할 수 있는 vector 에 대해 알아보도록 하겠습니다.

- VECTOR?

 벡터란 동일 데이터 타입을 갖는 1차원 배열을 의미합니다.

여기서 중요한 점은 동일 데이터 타입 이라는 점입니다! 즉, 다른 데이터와는 혼용하여 사용할 수 없습니다.

이를 활용하여 우리는 한 변수에 해당하는 수치를 벡터로 입력할 수 있습니다.

 

- CODE

벡터를 저장할 때에는 c라는 함수를 사용합니다.

#벡터 저장 예제 
A <- c(1, 2, 3, 4) #가능
B <- c('a', 2, '남자', '고졸') #불가능

length(A) # length 는 벡터의 길이를 반환하는 함수
# > 4 

C <- factor(c(1, 2, 3, 4, 1, 2), levels = c(1, 2, 3, 4))
# 범주형 벡터를 정의하는 함수. levels 인자를 설정하여, factor의 level을 조정한다.

이외에도 벡터를 생성하는 함수는 마주하게 될 때마다 설명하겠습니다.

 

- INDEXING?

 인덱싱이란 원하는 데이터에 빠르게 접근하기 위한 방법입니다.

조건문을 통해 데이터에 접근하는 방식이 일반적으로 많이 사용되지만,

오늘은 단순 숫자로 접근하는 방법에 대해 알아보겠습니다.

 #인덱싱 예제
LETTERS[c(1, 2, 3, 4)] # LETTERS는 기본제공 벡터로, 대문자 A-Z를 갖는 벡터입니다. (letters도 가능)
# > A B C D
letters[3:6] # : (콜론)은 연속하는 정수벡터를 만드는 명령어로, 3:6은 c(3, 4, 5, 6)을 의미합니다.
# > c d e f

 

- 활용

 R에서 기본으로 제공하는 벡터화 연산방식은, 굉장히 효율적이며 편리합니다.

예를 들어, 길이가 같은 두 벡터의 합, 곱은 대응하는 원소들끼리의 합, 곱으로 반환되며

이는 for문등의 반복문을 통하여 하나씩 처리하는 것보다 빠르기에, 큰 장점이라고 할 수 있습니다.

#벡터화 연산 예제
a <- c(1:5)
b <- c(2:6)
a + b # 길이가 같은 두 벡터를 더합니다.
# > 3 5 7 9 11
a - 2 # 수치형 벡터에 스칼라 값을 뺍니다.
# > -1 0 1 2 3
Comments