728x90
R에서는 데이터를 저장하는 기본적인 자료형으로 벡터(Vector)와 리스트(List)를 제공한다. 두 자료형은 데이터를 저장하는 방식과 활용 방법에서 차이가 있다. 이를 이해하기 위해 벡터와 리스트의 개념과 문법을 살펴보자.
1. 벡터(Vector)
벡터는 R에서 가장 기본적인 자료형이며, 동일한 데이터 타입(숫자형, 문자형, 논리형 등)의 원소들을 일렬로 저장하는 구조를 가진다.
벡터의 특징
- 동일한 자료형의 값만 저장 가능
- 인덱싱을 통해 원소에 접근 가능
- 연산이 각 원소에 일괄 적용됨 (벡터 연산 지원)
벡터 생성 예제
# 숫자형 벡터 생성
num_vec <- c(1, 2, 3, 4, 5)
print(num_vec) # [1] 1 2 3 4 5
# 문자형 벡터 생성
char_vec <- c("A", "B", "C")
print(char_vec) # [1] "A" "B" "C"
# 논리형 벡터 생성
bool_vec <- c(TRUE, FALSE, TRUE)
print(bool_vec) # [1] TRUE FALSE TRUE
2. 리스트(List)
리스트는 서로 다른 데이터 타입의 원소들을 저장할 수 있는 자료형이다. 벡터와 달리 리스트는 각 원소가 서로 다른 구조(벡터, 행렬, 데이터 프레임 등)를 가질 수 있다.
리스트의 특징
- 서로 다른 자료형의 데이터 저장 가능
- 각 원소는 키(key) 또는 인덱스를 사용하여 접근 가능
- 중첩 구조를 가질 수 있음 (리스트 안에 리스트 저장 가능)
리스트 생성 예제
# 리스트 생성
my_list <- list(name = "John", age = 30, scores = c(90, 85, 88))
print(my_list)
# 리스트의 원소 접근
print(my_list$name) # "John"
print(my_list$age) # 30
print(my_list$scores) # [1] 90 85 88
# 리스트의 원소에 인덱스로 접근
print(my_list[[1]]) # "John"
print(my_list[[3]]) # [1] 90 85 88
3. 벡터와 리스트의 차이점 정리
특징 | 벡터(Vector) | 리스트(List) |
---|---|---|
저장할 수 있는 데이터 타입 | 동일한 데이터 타입 | 서로 다른 데이터 타입 |
인덱싱 방식 | 숫자 인덱스 | 숫자 인덱스 또는 이름(key) 사용 |
원소 간 연산 | 가능 (벡터 연산 지원) | 불가능 (리스트는 구조가 다름) |
중첩 가능 여부 | 불가능 | 가능 (리스트 안에 리스트 포함 가능) |
즉, 벡터는 동일한 자료형을 갖는 데이터를 저장하는 데 적합하며, 연산을 쉽게 수행할 수 있다. 반면, 리스트는 서로 다른 자료형을 포함할 수 있어 보다 복잡한 데이터 구조를 저장할 때 유용하다.
728x90
'Programming > R' 카테고리의 다른 글
R에서 이상치 탐지 및 처리하는 방법 알아보기 (0) | 2025.02.18 |
---|---|
R에서의 자료 형태(mode)와 특징 (0) | 2025.02.12 |
R에서 Apriori 알고리즘으로 연관분석 해보기 (0) | 2025.02.09 |
[ADsP] R 언어로 주성분분석(PCA) 알아보기 (0) | 2025.02.08 |
R 언어에서 ANOVA와 T-test 수행 및 분석 방법 정리 (0) | 2025.02.07 |