R

[R 기초] R에서 말하는 벡터(Vector)란?

Jin_Omics 2025. 2. 21. 14:53

R에서 벡터(Vector)는 가장 기본적인 데이터 구조로, 하나의 데이터 유형을 가진 값들의 집합이다.
쉽게 말해, 벡터는 1차원 배열에 해당하며, 같은 데이터 유형만 포함하는 값들의 모임이다.


벡터의 특징

1. 1차원 배열
벡터는 1차원 데이터 구조로, 여러 값들이 한 줄로 나열된 형태.
예를 들어, 숫자들의 리스트를 벡터로 저장할 수 있다.

 

2. 하나의 데이터 유형만 포함
벡터는 같은 타입의 데이터만 저장할 수 있다.
예를 들어, 숫자형 벡터, 문자형 벡터, 논리형 벡터가 있다.

  • 숫자형 벡터: 숫자만 포함
  • 문자형 벡터: 문자만 포함
  • 논리형 벡터: TRUE/FALSE만 포함

만약, 숫자와 문자가 섞이면 모든 값이 문자형으로 바뀐다.


벡터 생성 방법

1. c() 함수 사용

벡터 생성의 가장 기본적인 방법은 c() 함수를 사용하는 것.
c() 함수는 여러 값을 묶어 하나의 벡터로 만드는 함수다.

# 숫자형 벡터
numbers <- c(1, 2, 3, 4, 5)  

# 문자형 벡터
names <- c("Alice", "Bob", "Charlie")

# 논리형 벡터
logic_values <- c(TRUE, FALSE, TRUE)

2️⃣ : 연산자 사용 (연속적인 숫자 만들기)

':' 연산자를 사용하면 연속된 숫자를 간단하게 생성할 수 있다.
예를 들어, 1부터 10까지 숫자를 벡터로 생성하고 싶다면:

# 1부터 10까지 연속된 숫자 벡터
numbers <- 1:10
 

3️⃣ rep() 함수 사용 (반복된 값 생성)

rep() 함수는 특정 값을 반복하여 벡터를 생성한다.

# 5를 3번 반복한 벡터
repeated_values <- rep(5, 3)

# 1, 2를 3번 반복한 벡터
repeated_sequence <- rep(c(1, 2), 3)
 

4️⃣ seq() 함수 사용 (일정한 간격의 숫자 생성)

seq() 함수는 일정한 간격의 숫자를 생성할 때 사용한다.

# 1부터 10까지 2씩 증가하는 숫자 벡터
sequence_values <- seq(1, 10, by=2)


벡터의 활용 예시

1. 벡터에서 특정 값 선택 (인덱싱)

벡터에서 원하는 요소를 선택할 때는 인덱싱을 사용한다.

 

🔥 TIP: 벡터 인덱싱

  • 인덱싱(indexing)은 벡터에서 원하는 특정 값을 선택할 때 사용된다.
  • R에서 벡터의 인덱스는 1부터 시작한다.
    0부터 시작하는(0-based indexing) 다른 언어들도 있지만, R에서는 첫번째 인덱스가 1번이다(1-based indexing)!
numbers <- c(10, 20, 30, 40, 50)

# 첫 번째 값 출력
print(numbers[1])  # 10

# 두 번째와 네 번째 값 출력
print(numbers[c(2, 4)])  # 20, 40

2. 벡터와 데이터 프레임

벡터는 데이터 프레임을 만들 때 여러 열로 묶어서 사용된다.

예를 들어:

 
id <- 1:5
name <- c("Alice", "Bob", "Charlie", "David", "Eve")
score <- c(85, 90, 78, 92, 88)

# 데이터 프레임 생성
df <- data.frame(id, name, score)

벡터는 데이터 프레임에서 각 열(column)을 구성하는 중요한 요소로 사용된다.

 


벡터의 장점

  • 간단하고 직관적: 하나의 벡터로 여러 값을 저장하고 처리할 수 있어 편리함.
  • 속도: 벡터 연산은 매우 빠르고 효율적이므로 큰 데이터셋을 처리할 때 유리함.
  • 다양한 함수와 결합: R에는 벡터를 다룰 수 있는 다양한 함수들이 내장되어 있어 데이터 분석 시 유용하게 사용됨.

💡 결론

벡터(Vector)는 R에서 가장 기본적이고 핵심적인 데이터 구조다.
✔ 벡터는 숫자, 문자, 논리값 등의 동일한 타입의 데이터들을 저장하는 데 사용된다.
R의 많은 연산은 벡터를 기반으로 하기 때문에 벡터의 이해는 데이터 분석의 중요한 첫 걸음이다.